Vodkart 1515 Postado Fevereiro 8, 2011 Share Postado Fevereiro 8, 2011 Função para mudar a quantidade de skills ou magic level do jogador. lib/050-function function doPlayerSetSkill(cid, skill, amount) local pid = getPlayerGUID(cid) doRemoveCreature(cid,true) db.executeQuery("UPDATE `player_skills` SET `value` = ".. amount .." WHERE `player_id` = ".. pid .. " and `skillid` = ".. skill ..";") return TRUE end function doPlayerSetMagic(cid, amount) local pid = getPlayerGUID(cid) doRemoveCreature(cid,true) db.executeQuery("UPDATE `players` SET `maglevel` = " .. amount .. " WHERE `id` = "..pid) return TRUE end exemplo de uso function onSay(cid, words, param) return doPlayerSetMagic(cid, 100) -- mudara o magic level do jogador para 100 end vocês também podem fazer calculo para adicionar por exemplo +10 de magic level ou skills,muito facil function onSay(cid, words, param) local add = 10 -- quanto vc quer adicionar de magic level doPlayerSetMagic(cid, getPlayerMagLevel(cid)+add) return TRUE end agora a função para skill: lista: SKILL_FIST (0) = Fist Fighting SKILL_CLUB (1) = Club Fighting SKILL_SWORD (2) = Sword Fighting SKILL_AXE (3) = Axe Fighting SKILL_DISTANCE (4) = Distance Fighting SKILL_SHIELD (5) = Shielding SKILL_FISHING (6) = Fishing ex: function onSay(cid, words, param) return doPlayerSetSkill(cid, 2, 50) -- mudei a skill de sword do jogador para 50 end ou add + x de skill... ex adicionando + 5 de skill sword function onSay(cid, words, param) return doPlayerSetSkill(cid, SKILL_SWORD, getPlayerSkillLevel(cid, SKILL_SWORD)+5) -- adicionei 5 de skill de sword end Link para o comentário Compartilhar em outros sites More sharing options...
Saymon14 115 Postado Fevereiro 9, 2011 Share Postado Fevereiro 9, 2011 Muito mais facil e gostoso de mudar o skill, e sem precisar de storage, certo ? Link para o comentário Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Fevereiro 9, 2011 Autor Share Postado Fevereiro 9, 2011 yeah Link para o comentário Compartilhar em outros sites More sharing options...
meubk 257 Postado Fevereiro 9, 2011 Share Postado Fevereiro 9, 2011 só funciona depois que reloga ? Link para o comentário Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Fevereiro 9, 2011 Autor Share Postado Fevereiro 9, 2011 é porque é pela database do player,ai só funciona com ele deslogado. Link para o comentário Compartilhar em outros sites More sharing options...
Subwat 405 Postado Abril 3, 2011 Share Postado Abril 3, 2011 cara fico perfeito esse sistema. Link para o comentário Compartilhar em outros sites More sharing options...
guixap 60 Postado Junho 17, 2011 Share Postado Junho 17, 2011 Tu poderia fazer um comando agora xD... Muita gente procura comando de venda de skill de ml onde. Só druid e sorc compra ml e com limite de 200, só pally compra distance com limite de 350 e só kina compra de club, sword e axe com limite de 350. Link para o comentário Compartilhar em outros sites More sharing options...
Kombosabo 0 Postado Dezembro 15, 2011 Share Postado Dezembro 15, 2011 (editado) Otimo function '-' usando no meu server soh uma duvida: "Se jogador for sorcerer e tiver magic level menor que 70, set magic level to 70." ta certo isso ai? if playerVoc == 1 and getPlayerSkill(cid, 7) <= 70 then doPlayerSetMagic(cid, 70) Editado Dezembro 15, 2011 por Kombosabo OT Server Link para o comentário Compartilhar em outros sites More sharing options...
Vodkart 1515 Postado Dezembro 17, 2011 Autor Share Postado Dezembro 17, 2011 if getPlayerVocation(cid) == 1 and getPlayerMagLevel(cid) < 70 then return doPlayerSetMagic(cid, 70) end Link para o comentário Compartilhar em outros sites More sharing options...
Kombosabo 0 Postado Dezembro 24, 2011 Share Postado Dezembro 24, 2011 if getPlayerVocation(cid) == 1 and getPlayerMagLevel(cid) < 70 then return doPlayerSetMagic(cid, 70) end REP+ Link para o comentário Compartilhar em outros sites More sharing options...
72asdf 2 Postado Dezembro 28, 2011 Share Postado Dezembro 28, 2011 muito obrigado pela contribuição. Link para o comentário Compartilhar em outros sites More sharing options...
Fir3element 185 Postado Janeiro 2, 2012 Share Postado Janeiro 2, 2012 (editado) SET é meio sem utilidade, acho que add ficaria melhor, ah e arrumei o TRUE porque nas últimas versões do tfs ele foi repassado por true function doPlayerSetSkill(cid, skill, amount) local pid = getPlayerGUID(cid) doRemoveCreature(cid, true) db.executeQuery("UPDATE `player_skills` SET `value` = `value` + ".. amount .." WHERE `player_id` = ".. pid .. " and `skillid` = ".. skill) return true end function doPlayerSetMagic(cid, amount) local pid = getPlayerGUID(cid) doRemoveCreature(cid, true) db.executeQuery("UPDATE `players` SET `maglevel` = `maglevel` + " .. amount .. " WHERE `id` = ".. pid) return true end Um modo de fazer essa função sem laggar o servidor é assim: function playerAddSkill(cid, skill, amount, round) if(skill == SKILL__LEVEL) then return doPlayerAddLevel(cid, amount, round) end for i = 1, amount do if(skill == SKILL__MAGLEVEL) then return doPlayerAddMagLevel(cid, i) end return doPlayerAddSkill(cid, skill, i) end end Editado Janeiro 26, 2012 por fireelement Link para o comentário Compartilhar em outros sites More sharing options...
jvcasarin 56 Postado Dezembro 6, 2015 Share Postado Dezembro 6, 2015 Desculpa reviver o tópico, mas preciso muito dessa ajuda! Olhem, me ajudem com esse script: function onSay(cid, words, param) if (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then doPlayerSendTextMessage(cid,22,"você precisa estar em protection zone pra poder usar este comando.") return TRUE end if doPlayerRemoveItem(cid,2160,500) and getPlayerVocation(cid) == 8 then doPlayerSetSkill(cid, 3, 400) doCreatureSay(cid, "AXE FULL KNIGHT!", TALKTYPE_ORANGE_1) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MORTAREA) else doPlayerSendCancel(cid, 'voce precisa de 5kk para usar este comando e ser Kina.') doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FLAMEAREA) end end Mais informações para os erros que aparecem: http://www.xtibia.com/forum/topic/238114-erro-erros-com-talkactions/ Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados