[npc] Alguns Codigos

Eskilote
em Lixeira Pública

Eskilote

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/01/06Posts: 2

Postei na area de duvidas, mais ninguem me ajudou... entao esotu tentando postar aqui :blush:

 

Bom. Estava pensando em fazer algo criativo no meu ot. Escrevi algumas raças novas e suas respectivas caracteristicas... mais dai encontrei um problema: Muitos players querendo mudar de profição.. e fazer isso manualmente esta ficando cansativo, e queria saber se podem ajudar:

 

Gostaria de fazer um npc com as funções:

-Trocar a vocação

-Alterar a vida/mana

-Alterar o level

 

Sei que posso estar pedindo de mais, e se nao for nada complicado (espero que nao seja) por favor me ajudem, mesmo se nao der algumas das funções... gostaria de ouvir o conselho de vcs . Ficarei muito grato ^.^

_ferrari_

avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 27/12/06Posts: 202

vocação:

setPlayerVocation(cid,ID_DA_VOC)

level:

playerid = getPlayerGUID(cid)

db.executeQuery("UPDATE `players` SET `level`="LEVEL_DESEJADO,`experience`=EXP_DO_NIVEL" WHERE `players`.`id`= ".. playerid .."")

mana e vida:

playerid = getPlayerGUID(cid)

db.executeQuery("UPDATE `players` SET `healthmax`="VIDA_MAXIMA_DESEJADA,`health`=VIDA_ATUAL_DESEJADA",`manamax`=MANA_MAXIMA_DESEJADA",`mana`=MANA_ATUAL_DESEJADA" WHERE `players`.`id`= ".. playerid .."")

 

As partes editáveis estão em maiúsculo, e as palavras separadas por "_". Em mana e vida máxima, imagine:

 

Você tem 200 de mana ao todo e esse valor não sobe de jeito nenhum (sem aumentar o nível), essa é sua mana máxima. Ao gastar 100 de mana, fica com 100, então essa é a sua mana atual (que é recuperável). Mesma coisa para vida. Espero ter ajudado. Eu peguei os codigos de DB de outro script, pois não sei mexer direito, se precisar de ajuda poste novamente.

 

 

Caso esteja procurando a função para aumentar a vida e mana atual é:

doPlayerAddMana(cid,VALOR)

e

doPlayerAddHealth(cid,VALOR)

 

O valor pode ser negativo para causar dano e remover a mana.

 

Abraço

Objetivos:
50 posts [x]
100 posts[x]
200 posts[x]
500 posts[x]
"Um post em um fórum deve como uma saia. Longa o suficiente para cobrir o assunto, porém curta o suficiente para manter as coisas interessantes"
Gosta de mim? Foi com minha cara? Quer me matar? Use:

Eskilote

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 04/01/06Posts: 2

Obrigado cara.. voce nao sabe como me ajudou! ^^

Pensei que o meu tópico ia morrer sem respostqa

:party:

 

E sobre a mana e vida: Eu queria diminuir o valor total, mais deu certo com o primeiro comando

 

 

Edit: Nossa, como o sistema de npcs dos servidores 8.4x é complicado... mudei de idéia, vou fazer actions :D ( tem algum comando para mudar o sexo?? )

_ferrari_

avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 27/12/06Posts: 202

Claro. Te aconselho a criar uma função na LIB das actions, setPlayerSex() (NÃO SEI SE JÁ EXISTE, CASO NÃO EXISTA VOCÊ CRIA). Está ai:

 

 

 

function setPlayerSex(player,sexid)

sex = sexid

if sex == 1 then

 

playerid = getPlayerGUID(cid)

db.executeQuery("UPDATE `players` SET `sex`= 1 WHERE `players`.`id`= ".. playerid .."")

else

playerid = getPlayerGUID(cid)

db.executeQuery("UPDATE `players` SET `sex`= 0 WHERE `players`.`id`= ".. playerid .."")

end

end

 

 

Assim, fica registrada a função setPlayerSex(JOGADOR,SEXO), onde jogador é o player a qual se refere (cid, getPlayerbyName etc..) e sexo o id do sexo. Não tenho certeza mas acho que 1 é mulher e 0 é homem. Também aconselho a, após trocar o sexo, deslogar o player para dar "refresh". Qualquer coisa poste ou mande PM :smile_positivo:

 

 

--- APROVEITANDO QUE ESTÁ ONLINE, O SISTEMA DE NPCS DE 8.1 + É JIDDO. TAMBÉM NÃO GOSTO MAS EXISTEM TUTORIAIS BONS. EU PREFIRO FAZER POR SCRIPT, MAS TEM COMO EDITAR OS NPCS DO SEU SERVER PRA TER UMA BASE

--- EDITANDO NOVAMENTE, EU LI O PRIMEIRO POST COM MAIS ATENÇÃO. FIQUE MUITO ATENTO QUANDO FOR MUDAR A VOCAÇÃO. IMAGINE, UM SORC PEGA ML 70, VIRA KINA, PEGA SHIELDING 100, VIRA PALA, PEGA DISTANCE 100 E VIRA SORC DENOVO, COM BURST ARROW.

Objetivos:
50 posts [x]
100 posts[x]
200 posts[x]
500 posts[x]
"Um post em um fórum deve como uma saia. Longa o suficiente para cobrir o assunto, porém curta o suficiente para manter as coisas interessantes"
Gosta de mim? Foi com minha cara? Quer me matar? Use:

Heitorzin

Ex-Coordenador XTibia
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 23/10/05Posts: 233Char no Tibia: Inp

Fechado.

 

- Dúvida sanada por msn segundo o Ferrari.


Ex-Coordenador XTibia.com