Ir para conteúdo
  • 0

Quest que ganha skills


Dennyz Dias

Pergunta

Dae pessoal alguem poderia me ajudar num script para uma quest no meu servidor

Que Ganha skills, meu server tem 7 vocaçoes 3 mages e 4 que usam skills club, (axe, sword)

, fist ,distance

 

Os mages ganhariam 4 ml

Os outros 12 skills kd um, apenas 1 ves ao terminar a quest

 

Repp++

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Vlw @

 

ja arrumei o script para meu server porem vocaçao Knight nao esta dando as skills corretamente so esta dando a primeira skill confiragurada e nao as 2 configurada

 

segue:

 

a linha do Knight :

 

 

 

elseif voc == 4 or voc == 8 or voc == 12 then

stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD)+12)
doPlayerSetSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE)+12)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Distance Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end

Link para o comentário
Compartilhar em outros sites

  • 0

As funções usadas não fazem sentido em relação ao propósito, sugiro que troque-as por essas:

function doPlayerAddSkill(cid, skill, level)
    local newLevel = getPlayerSkillLevel(cid, skill) + level
    doPlayerAddSkillTry(cid, skill, getPlayerRequiredSkillTries(cid, skill, newLevel) - getPlayerSkillTries(cid, skill))
    return true
end
 
function doPlayerAddMagicLevel(cid, level)
    local newLevel = getPlayerMagicLevel(cid, level) + level
    doPlayerAddSpentMana(cid, getPlayerRequiredMana(cid, newLevel) - getPlayerSpentMana(cid))
    return true
end

 

depois isso:

 

doPlayerSetSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD)+12)
doPlayerSetSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE)+12)

 

por isso:

 

doPlayerAddSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD) + 12)
doPlayerAddSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE) + 12)
Link para o comentário
Compartilhar em outros sites

  • 0

 

As funções usadas não fazem sentido em relação ao propósito, sugiro que troque-as por essas:

function doPlayerAddSkill(cid, skill, level)
    local newLevel = getPlayerSkillLevel(cid, skill) + level
    doPlayerAddSkillTry(cid, skill, getPlayerRequiredSkillTries(cid, skill, newLevel) - getPlayerSkillTries(cid, skill))
    return true
end
 
function doPlayerAddMagicLevel(cid, level)
    local newLevel = getPlayerMagicLevel(cid, level) + level
    doPlayerAddSpentMana(cid, getPlayerRequiredMana(cid, newLevel) - getPlayerSpentMana(cid))
    return true
end

depois isso:

doPlayerSetSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD)+12)
doPlayerSetSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE)+12)

por isso:

doPlayerAddSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD) + 12)
doPlayerAddSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE) + 12)

@

 

Desculpe mais não entendi

 

Segue o script completo

 

Lembrando que so Knight que esta dando errado, ele nao esta dando as 2 Skills, axe e sword para o Player

Ele só ta dando a primeira skill configurada

 

 

 

function onUse(cid, item, frompos, item2, topos)
voc = getPlayerVocation(cid)
pos = getPlayerPosition(cid)
if voc == 1 or voc == 5 or voc == 2 or voc == 6 or voc == 11 or voc == 12 or voc == 4 then
stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetMagic(cid, getPlayerMagLevel(cid)+4)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Magic Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
elseif voc == 3 or voc == 7 or voc == 12 then
stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetSkill(cid, SKILL_DISTANCE, getPlayerSkillLevel(cid, SKILL_DISTANCE)+12)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Distance Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
elseif voc == 13 or voc == 14 or voc == 12 then
stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetSkill(cid, SKILL_FIST, getPlayerSkillLevel(cid, SKILL_FIST)+12)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Fist Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
elseif voc == 9 or voc == 10 or voc == 12 then
stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetSkill(cid, SKILL_CLUB, getPlayerSkillLevel(cid, SKILL_CLUB)+12)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Club Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
elseif voc == 4 or voc == 8 or voc == 12 then
stor = getPlayerStorageValue(cid,2355)
if stor == -1 then
setPlayerStorageValue(cid,2355,1)
doPlayerSetSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD)+12)
doPlayerSetSkill(cid, SKILL_AXE, getPlayerSkillLevel(cid, SKILL_AXE)+12)
doSendMagicEffect(frompos, 28)
doSendAnimatedText(pos, "Axe e Sword Up", TEXTCOLOR_BLUE)
else
doPlayerSendTextMessage(cid,22,"Você já terminou esta quest.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
else
doPlayerSendTextMessage(cid,22,"Você não tem vocação necessaria.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
return true
end

Editado por Dennyz Dias
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...