Ir para conteúdo
  • 0

[RESOLVIDO] Trocar Looktype e Ficar sem andar


HeelNox

Pergunta

Gostaria de um script da seguinte forma



Quando tal vocação usar tal comando muda-se a looktype e fica-se sem se mover , mais quando usar ele denovo volta-se a se mover e a looktype que estava antes


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

Posts Recomendados

  • 0

Fiz um do início, vamos ver se funciona agora:

function onSay(cid, words, param)

local vocs = {
[1] = 123,
[2] = 231,
[3] = 98,
[4] = 76,
}

if not vocs[getPlayerVocation(cid)] then
return true
end

if getPlayerStorageValue(cid, 9329) < 1 then
doCreatureSetNoMove(cid, true)
setPlayerStorageValue(cid, 9329, 1)
doSetCreatureOutfit(cid, vocs[getPlayerVocation(cid)], -1)
elseif getPlayerStorageValue(cid, 9329) >= 1 then
doCreatureSetNoMove(cid, false)
setPlayerStorageValue(cid, 9329, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
return true
end

Nesta parte, você tem que mudar:

local vocs = {
[1] = 123,
[2] = 231,
[3] = 98,
[4] = 76,
}

Entre [ e ] é o ID da vocação e o número ao lado é o lookType.

#GoodLuck.

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

  • 0

Funcionou mais não ta trocando a looktype

 

[17/08/2013 10:12:49] [Error - TalkAction Interface]
[17/08/2013 10:12:49] data/talkactions/scripts/sit.lua:onSay
[17/08/2013 10:12:49] Description:
[17/08/2013 10:12:49] attempt to index a number value
[17/08/2013 10:12:49] stack traceback:
[17/08/2013 10:12:49] [C]: in function 'doSetCreatureOutfit'
[17/08/2013 10:12:49] data/talkactions/scripts/sit.lua:16: in function <data/talkactions/scripts/sit.lua:1>

 

 

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

  • 0

vc mudou os ids ta looktype?

Sim

 

 

function onSay(cid, words, param)

local vocs = {
[1] = 538,
[2] = 585,
[3] = 536,
}
if not vocs[getPlayerVocation(cid)] then
return true
end
if getPlayerStorageValue(cid, 9329) < 1 then
doCreatureSetNoMove(cid, true)
setPlayerStorageValue(cid, 9329, 1)
doSetCreatureOutfit(cid, vocs[getPlayerVocation(cid)], -1)
elseif getPlayerStorageValue(cid, 9329) >= 1 then
doCreatureSetNoMove(cid, false)
setPlayerStorageValue(cid, 9329, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
return true
end
Link para o comentário
Compartilhar em outros sites

  • 0

ah eh pq o roksas não usou o parâmetro certo na função, tem que colocar {lookType}

function onSay(cid, words, param)
 
local vocs = {
[1] = 538,
[2] = 585,
[3] = 536,
}
 
if not vocs[getPlayerVocation(cid)] then
return true
end
if getPlayerStorageValue(cid, 9329) < 1 then
doCreatureSetNoMove(cid, true)
setPlayerStorageValue(cid, 9329, 1)
doSetCreatureOutfit(cid, {lookType = vocs[getPlayerVocation(cid)]}, -1)
elseif getPlayerStorageValue(cid, 9329) >= 1 then
doCreatureSetNoMove(cid, false)
setPlayerStorageValue(cid, 9329, -1)
doRemoveCondition(cid, CONDITION_OUTFIT)
end
return true
end
Editado por Vodkart
Link para o comentário
Compartilhar em outros sites

  • 0

#Perfect

 

 

function onSay(cid, words, param)

local hpGain = 5
local vocs = {
    [1] = 538,
    [2] = 585,
    [3] = 536,
}
 
if not vocs[getPlayerVocation(cid)] then
    return true
end

if getPlayerStorageValue(cid, 9329) < 1 then
    heal(cid, hpGain)
    doCreatureSetNoMove(cid, true)
    setPlayerStorageValue(cid, 9329, 1)
    doSetCreatureOutfit(cid, {lookType = vocs[getPlayerVocation(cid)]}, -1)
    
elseif getPlayerStorageValue(cid, 9329) >= 1 then
    doCreatureSetNoMove(cid, false)
    setPlayerStorageValue(cid, 9329, -1)
    doRemoveCondition(cid, CONDITION_OUTFIT)
end
    return true
end

function heal(uid, hp)

if not isPlayer(uid) then
    return true
end

if getPlayerStorageValue(uid, 9329) < 1 then
    return true
end

doCreatureAddHealth(uid, hp)
    return addEvent(heal, 1 * 1500, uid, hp)
end
Link para o comentário
Compartilhar em outros sites

  • 0

 

#Perfect

function onSay(cid, words, param)

local hpGain = 5
local vocs = {
    [1] = 538,
    [2] = 585,
    [3] = 536,
}
 
if not vocs[getPlayerVocation(cid)] then
    return true
end

if getPlayerStorageValue(cid, 9329) < 1 then
    heal(cid, hpGain)
    doCreatureSetNoMove(cid, true)
    setPlayerStorageValue(cid, 9329, 1)
    doSetCreatureOutfit(cid, {lookType = vocs[getPlayerVocation(cid)]}, -1)
    
elseif getPlayerStorageValue(cid, 9329) >= 1 then
    doCreatureSetNoMove(cid, false)
    setPlayerStorageValue(cid, 9329, -1)
    doRemoveCondition(cid, CONDITION_OUTFIT)
end
    return true
end

function heal(uid, hp)

if not isPlayer(uid) then
    return true
end

if getPlayerStorageValue(uid, 9329) < 1 then
    return true
end

doCreatureAddHealth(uid, hp)
    return addEvent(heal, 1 * 1500, uid, hp)
end

 

Num ta healando D=

Link para o comentário
Compartilhar em outros sites

  • 0

tome esse. acho que ele eskeçeu de colocar o hpGain no ultimo rs.

 

function onSay(cid, words, param)

local hpGain = 5
local vocs = {
    [1] = 538,
    [2] = 585,
    [3] = 536,
}
 
if not vocs[getPlayerVocation(cid)] then
    return true
end

if getPlayerStorageValue(cid, 9329) < 1 then
    heal(cid, hpGain)
    doCreatureSetNoMove(cid, true)
    setPlayerStorageValue(cid, 9329, 1)
    doSetCreatureOutfit(cid, {lookType = vocs[getPlayerVocation(cid)]}, -1)
    
elseif getPlayerStorageValue(cid, 9329) >= 1 then
    doCreatureSetNoMove(cid, false)
    setPlayerStorageValue(cid, 9329, -1)
    doRemoveCondition(cid, CONDITION_OUTFIT)
end
    return true
end

function heal(uid, hp)

if not isPlayer(uid) then
    return true
end

if getPlayerStorageValue(uid, 9329) < 1 then
    return true
end

doCreatureAddHealth(uid, hpGain)
    return addEvent(heal, 1 * 1500, uid, hp)
end
Link para o comentário
Compartilhar em outros sites

  • 0

 

tome esse. acho que ele eskeçeu de colocar o hpGain no ultimo rs.

function onSay(cid, words, param)

local hpGain = 5
local vocs = {
    [1] = 538,
    [2] = 585,
    [3] = 536,
}
 
if not vocs[getPlayerVocation(cid)] then
    return true
end

if getPlayerStorageValue(cid, 9329) < 1 then
    heal(cid, hpGain)
    doCreatureSetNoMove(cid, true)
    setPlayerStorageValue(cid, 9329, 1)
    doSetCreatureOutfit(cid, {lookType = vocs[getPlayerVocation(cid)]}, -1)
    
elseif getPlayerStorageValue(cid, 9329) >= 1 then
    doCreatureSetNoMove(cid, false)
    setPlayerStorageValue(cid, 9329, -1)
    doRemoveCondition(cid, CONDITION_OUTFIT)
end
    return true
end

function heal(uid, hp)

if not isPlayer(uid) then
    return true
end

if getPlayerStorageValue(uid, 9329) < 1 then
    return true
end

doCreatureAddHealth(uid, hpGain)
    return addEvent(heal, 1 * 1500, uid, hp)
end

 

Não funfou , estou com meu char player e não ta healando

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

×
×
  • Criar Novo...