RA

[Pedido] Template De Skill De Criação De Itens

Por RaphinhaMaker, 23 de jun. de 2010 em Scripts

script
7
1.5k
RaphinhaMakerR
23 de junho de 2010 às 15:33

Bem pessoal, o que eu quero, pode ser simples para quem sabe, mas eu não conseguí fazer ou adaptar, nem achei nada que possa me auxiliar...

 

Eu estou precisando, não de uma Skill em sí, mas de um template se uma Skill que crie itens...

Se possível, uma que crie a partir de outros itens e uma que crie idependente...

 

Meu foco é usar-las para as técnicas de Medician e Biochemist do meu projeto OtIncubus, onde as duas classes são básicamente criadoras de poções e etc...

 

Se possível também, um script de Skill a parte, com a função do itens feito aparecer no chão, ao lado de quem a conjurou, em vez de aparecer diretamente no inventário ( no caso, um script que apareça no inventário e outro que apareça no chão), mas qualquer ajuda é bem vinda...

 

 

Desde já agradeço pela atenção...

felzanF
23 de junho de 2010 às 15:52

creio que não tenha como adicionar novas skills sem "mexer" no client, com programação. e até para editar o nome precisa modificar o cliente.

se quer criar novas, terá de ter um programador e um scripter se quer apenas modificar uma só um scripter ja da, modificar o nome, só o nome de uma skill no client é facin.

 

e não intendi o que você quis dizer com template...

seria só uma modificação?

RaphinhaMakerR
23 de junho de 2010 às 16:44

Skill que eu digo é Spell...Foi mal, não sou acustumado a falar no dialeto "tibianês", ainda me confundo muito...

 

E template que eu digo, é o código da Spell com funções modificáveis, por exemplo:

 

class spell_create_item
if @actor[!].use.spell and have.item[id do item] = create.item[id do item criado]
else 
print "Você não possui o item $%..."
end

 

Algo nessa sintaxe aí...

KydraiK
23 de junho de 2010 às 17:19

Ta meio confuso a sua explicação.

Você quer uma uma spell que precisa ou não de outros items para criar um novo?

 

Seria algo assim:

function onCastSpell(cid, var)
if getPlayerItemCount(cid, ITEMID) >= QUANTIDADE then	
	local pos = getCreaturePosition(cid)
	doPlayerRemoveItem(cid, ITEMID, QUANTIDADE)
	doCreateItem(ITEMID2, QUANTIDADE, pos)
	doSendMagicEffect(pos, CONST_ME_FIREWORK_YELLOW)
else
	doPlayerSendCancel(cid, "Você não possui o item "..getItemNameById(ITEMID))
	return FALSE
end
return TRUE
end

Se você explicar melhor da pra fazer mais.

RaphinhaMakerR
24 de junho de 2010 às 02:21

kydrai, é isso aí!!!

Agora, poderia me explicar como eu faço para usar esse script nas seguintes formas:

 

1º Usando mais de um item

2º Sem usar itens

3º Para o item aparecer no inventário ( se possível utilizando o mesmo método )

 

Desde já agradeço... =D

KydraiK
24 de junho de 2010 às 13:40

Pra precisar de 2 items basta usar um "and" e remover os dois items:

function onCastSpell(cid, var)
       if getPlayerItemCount(cid, ITEMID) >= QUANTIDADE and getPlayerItemCount(cid, ITEMID2) >= QUANTIDADE2 then
       -- se tiver "QUANTIDADE" >= de ITEMID e "QUANTIDADE2" >= de ITEMID2 então
               local pos = getCreaturePosition(cid) -- pega posição do player
               doPlayerRemoveItem(cid, ITEMID, QUANTIDADE) -- remove ITEMID
               doPlayerRemoveItem(cid, ITEMID2, QUANTIDADE2) -- remove ITEMID2
               doCreateItem(ITEMID3, QUANTIDADE3, pos) -- cria item
               doSendMagicEffect(pos, CONST_ME_FIREWORK_YELLOW) -- efeito mágico
       else
      -- se não
               doPlayerSendCancel(cid, "Você não possui o item "..getItemNameById(ITEMID).." ou "..getItemNameById(ITEMID2))
               return FALSE
       end
       return TRUE
end

 

Sem usar items:

function onCastSpell(cid, var)
       local pos = getCreaturePosition(cid) -- pega posição do player
       doCreateItem(ITEMID3, QUANTIDADE3, pos) -- cria item
       doSendMagicEffect(pos, CONST_ME_FIREWORK_YELLOW) -- efeito mágico
       return TRUE
end

 

Item no inventário:

Remove: "doCreateItem(ITEMID3, QUANTIDADE3, pos)"

E coloca: "doPlayerAddItem(cid, ITEMID3, QUANTIDADE3)"

RaphinhaMakerR
24 de junho de 2010 às 16:21

Nossa...Valeu irmão...

Realmente isso vai me abrir umas belas portas... =D

 

Salvou pelo menos umas 25 Spells do meu projeto... ^^

Editado Junho 24 por RaphinhaMaker