Ir para conteúdo
  • 0

Pedito De Sistema Axo Que É Simples


Mated

Pergunta

queria saber se alguem poderia min fazer um script assim]:

 

que o player ao dar use em um item imovel, ele ganhara uma outifit e ficara no lugar daquele item,

 

ai quando o player der uma passo pra qualquer lado ele voltara ao normal

 

valendo rep+ 2x

Link para o comentário
Compartilhar em outros sites

  • Respostas 48
  • Created
  • Última resposta

Top Posters For This Question

Posts Recomendados

  • 0

olhe nao testei to sem tempo mas aki esta

 

va em data / action / scripts / e ponhe o nome de algum arquivo para itemout e adicione isso la

 

function onUse(cid, item)
local outfit = {lookType = 302, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0} -- Outift e as cores
local val = db.getResult("SELECT `looktype` FROM `players` WHERE `id` = "..getPlayerGUID(cid)..";") -- Nao Mexa

if setPlayerStorageValue(cid, 31010, val:getDataString("looktype")) then
doCreatureChangeOutfit(cid, outfit)
return TRUE
end
doCreatureChangeOutfit(cid, {lookType = getPlayerStorageValue(cid, 31010)})
return TRUE
end

 

dps em actions.xml adicione isto la

 

<action itemid="ID DA CADEIRA" script="itemout.lua"/>

Link para o comentário
Compartilhar em outros sites

  • 0

Gente achei dois graves erros, são eles:

 

1° quando dou use no item ele n vai pra cima do item EX: o carinha indo ficando emcima da cadeira dando inpreção q ele esta sentando mesmo.

 

2°quando eu ando não sai a outifit.

 

tem como arruma rep+

Link para o comentário
Compartilhar em outros sites

  • 0

Eu não manjo muito Lua, mas tenho uma boa lógica de programação.

 

Portanto, dei apenas uma mexida no script adicionado acima..

 

 

function onUse(cid, item)
local outfit = {lookType = 302, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0} -- Outift e as cores
local val = db.getResult("SELECT `looktype` FROM `players` WHERE `id` = "..getPlayerGUID(cid)..";") -- Nao Mexa
pos = getPlayerPosition(cid)

while getPlayerPosition(cid) = pos do
if setPlayerStorageValue(cid, 31010, val:getDataString("looktype")) then
doCreatureChangeOutfit(cid, outfit)
return TRUE
end
end

doCreatureChangeOutfit(cid, {lookType = getPlayerStorageValue(cid, 31010)})
return TRUE
end

 

Ideologia?

-> Enquanto a posição do player não mudar depois que usar e for alterado o outfit,... o outfit permanece.

 

Quando ele se mover, ou seja, mudar a posição, o outfit some.

 

 

 

 

Sei la, é testar agora.

 

Oops, correção, coloque um = depois do = na declaração do while

Link para o comentário
Compartilhar em outros sites

  • 0

Vou tentar fazer aqui, já edito se conseguir, já pensei em um modo de fazer.

 

EDIT!

Pronto.

Se for o que eu entendi, não sei se era bem isso.

 

Em Actions crie o arquivo.lua com isso.

 

 

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

 

 

local outfit = {lookType = 302, lookHead = 0, lookBody = 0, lookLegs = 0, lookFeet = 0, lookAddons = 0} -- LOOKTYPE.

local pos = {x = 0, y = 0, z = 0} -- Pos do item. (O item tem quer ser fixo no local pois se moverem o item ele vai mandar pro local que você coloco aqui.)

 

function addLook()

if not isCreature(cid) then return true end

doSetCreatureOutfit(cid, outfit, -1)

setPlayerStorageValue(cid, 32193, 1)

end

 

if getPlayerStorageValue(cid, 32193) <= 0 then

addEvent(addLook, 300)

doTeleportThing(cid, pos)

end

 

end

 

 

 

 

Adicione isso no actions.xml.

 

 

 

 

<action itemid="XXXX" script="arquivo.lua"/>

 

XXXX = Id do item que você quer que execute a action.

 

 

 

 

Depois em movements você cria um arquivo.lua com isso.

 

 

 

 

function onStepOut(cid, item, position, fromPosition)

 

if getPlayerStorageValue(cid, 32193) >= 1 then

doRemoveCondition(cid, CONDITION_OUTFIT)

setPlayerStorageValue(cid, 32193, 0)

end

 

end

 

 

 

 

Adicione isso no movements.xml.

 

 

 

 

<movevent type="StepOut" itemid="XXXX" event="script" value="arquivo.lua"/>

 

XXXX = Id do piso em que o personagem vai estar em cima.

 

 

 

 

Aqui funcionou só não entendi muito bem o que vocês queriam, era pro player ficar no lugar do item e remover o item ? Era só pra ele ficar em cima do item ?

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


×
×
  • Criar Novo...