Ir para conteúdo
  • 0

Script De Title


loucodemais

Pergunta

Bom queria um script que seria basecamente isso:

 

o player pisa em um title ai ele ganah uma outifit.. se ele sair dakele title a outfit sai.

 

 

OBS: queria tbm q podesse destinguir male e female e tbm que tivesse uma função pra que se o playe tiver com 2 x storage n pode pisa no title.

 

valendo rep + por favor preciso mt

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

Tó:

 

movements.xml:

 

<movevent type="StepIn" actionid="xxxx" script="tileoutfit.lua"/>
<movevent type="StepOut" actionid="xxxx" script="tileoutfit.lua"/>

 

Substitua o xxxx por um action id que desejar.

 

tileoutfit.lua:

 

function onStepIn(cid, item, position, fromPosition)
local stor = 7319 -- Storage
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

if getPlayerStorageValue(cid, stor) == 2 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end

 

 

Configure aqui:

local stor = 7319 -- Storage
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

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

  • 0

Atualizando o script pra corrigir uma confusão:

 

 

function onStepIn(cid, item, position, fromPosition)
local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

if getPlayerStorageValue(cid, stor) > 0 and getPlayerStorageValue(cid, stor2) > 0 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end

 

 

Configure aqui:

local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

 

E você não coloca storage no chão, cara. Você provavelmente confundiu com Action ID. Coloca o actionid que quiser na tag e no chão (OBS: A tag e o chão devem ter o mesmo action id).

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

  • 0

vou testa se eu conssegui aviso jaja edito..

 

botei as tag assim:

 

 

<movevent type="StepIn" actionid="12555" script="tileoutfit.lua"/>

<movevent type="StepOut" actionid="12556" script="tileoutfit.lua"/>

 

qual dos 2 q eu boto no chao?

Link para o comentário
Compartilhar em outros sites

  • 0

O StepIn e StepOut tem que ser igual.

 

Deixe assim:

 

<movevent type="StepIn" actionid="12555" script="tileoutfit.lua"/>
<movevent type="StepOut" actionid="12555" script="tileoutfit.lua"/>

 

E coloque action id 12555 no chão.

Link para o comentário
Compartilhar em outros sites

  • 0

OK vou testa jaja edito..

 

EDIT

 

 

erro:

 

 

[08/12/2012 14:34:57] [Error - MoveEvents Interface]

[08/12/2012 14:34:57] data/movements/scripts/cadeira.lua:onStepIn

[08/12/2012 14:34:57] Description:

[08/12/2012 14:34:57] data/movements/scripts/cadeira.lua:13: attempt to call global 'isMale' (a nil value)

[08/12/2012 14:34:57] stack traceback:

[08/12/2012 14:34:57] data/movements/scripts/cadeira.lua:13: in function <data/movements/scripts/cadeira.lua:1>

 

 

E TIPO N ACONTECE NADA LA NO SV, QUANDO PISO NO TITLE APARECE ESSE ERRO E N DA A ROUPA =/

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

  • 0

É que seu server não tem a função isMale(cid).

 

Script corrigido:

 

 

function isMale(cid)
return getPlayerSex(cid) == 1 and true or false
end

function onStepIn(cid, item, position, fromPosition)
local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

if getPlayerStorageValue(cid, stor) > 0 and getPlayerStorageValue(cid, stor2) > 0 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

Tó:

 

 

function isMale(cid)
return getPlayerSex(cid) == 1 and true or false
end

function onStepIn(cid, item, position, fromPosition)
local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

Luck ficou bom rep+.. so não ficou 100% do geito q eu queria pq meu sv é de poketibia ai essa storage é a do fly ai tipo se o cara ta de fly e tenta pisa la ele pisa e volta certo.. mais quando volta ele n volta com a outifit do fly =/ se der pra arruma ficarei mt grato e te darei um rep + amanha de novo. por favor tem como fazer pra tipo ou quando ele pisa e volta vim com a roupa do fly ou se tiver com a storage do fly ele nen pisa la tipo como se fosse block pra ele com fly?

Link para o comentário
Compartilhar em outros sites

  • 0

Não entendi direito o que você quis dizer, mas vê se é isso:

 

 

function isMale(cid)
return getPlayerSex(cid) == 1 and true or false
end

function onStepIn(cid, item, position, fromPosition)
local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female
local flym = 128 -- Outfit Fly Male
local flyf = 133 -- Outfit Fly Female

if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
doSetCreatureOutfit(cid, isMale(cid) and {lookType = flym} or {lookType = flyf}, -1)
return true
end

 

 

Configurando:

local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female
local flym = 129 -- Outfit Fly Male
local flyf = 134 -- Outfit Fly Female

Link para o comentário
Compartilhar em outros sites

  • 0

nn tipo... quando o player ta com a storage ai ele pisa la e volta um sql certo? e mostra a msg "voçe não pode pisa aki"..

 

ai tipo quando o cara ta de fly no charizard (exemplo) ai quando pisa la e volta pq foi cancelado ai quando ele volta, ele volta com a outifit do player normal sem ta de fly. ai queria q ele voltasse com o type do fly. igual quando ele tentou pisa la no title.

Link para o comentário
Compartilhar em outros sites

  • 0

Ah sim, agora entendi. Tó:

 

 

function isMale(cid)
return getPlayerSex(cid) == 1 and true or false
end

local stor = 7318 -- Storage 1
local stor2 = 7319 -- Storage 2
local outm = 128 -- Outfit Male
local outf = 133 -- Outfit Female

function onStepIn(cid, item, position, fromPosition)
if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 then
doPlayerSendCancel(cid, "Você não pode pisar aqui.")
doTeleportThing(cid, fromPosition)
doSendMagicEffect(getCreaturePos(cid), 2) return true
end

doSetCreatureOutfit(cid, isMale(cid) and {lookType = outm} or {lookType = outf}, -1)
return true
end

function onStepOut(cid)
if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 then return true end
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

luck tu é o cara vey PERFECT!

 

rep+ amanha tbm ^^

 

 

a uma duvida simples pra eu add mais uma storage so fazer assim ne?

 

 

local stor = 7318 -- Storage 1

local stor2 = 7319 -- Storage 2

local stor3 = 7319 -- Storage 3

 

 

e

 

 

if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 or getPlayerStorageValue(cid, stor3) > 0 then return true end

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

  • 0

Isso mesmo, mas tem aqui também:

 

function onStepIn(cid, item, position, fromPosition)
if getPlayerStorageValue(cid, stor) > 0 or getPlayerStorageValue(cid, stor2) > 0 then
(...)

 

Só lembre de mudar a Stor3, ela tá igual a Stor2.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...