Ir para conteúdo

Npc Não Se Move


douglas250504

Posts Recomendados

ola pessoal, eu tava aqui mechendo no meu ot server, tudo certin ;X mais ai eu entrei no ot só para testar se tava tudo certin e ta!

eu fiquei um tempo olhando pro npc pra ver se ele anda e ate aonde ele vai, mais ai eu percebi que o npc não se move e quando eu falo com o npc ele nem olhar para voce olha e eu queria que alguem me ajudasse a fazer ele dar umas voltinhas!

 

 

 

aqui vai o script do npc: (lembrando que é npc do server evolutions.xml 0.7.6)

Obrigado desde ja!

 

\/

 

 

local focus = 0

local talk_start = 0

local target = 0

local days = 0

 

function onThingMove(creature, thing, oldpos, oldstackpos)

 

end

 

 

function onCreatureAppear(creature)

 

end

 

 

function onCreatureDisappear(cid, pos)

if focus == cid then

selfSay('Good bye then.')

focus = 0

talk_start = 0

end

end

 

 

function onCreatureTurn(creature)

 

end

 

 

function msgcontains(txt, str)

return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))

end

 

 

function onCreatureSay(cid, type, msg)

msg = string.lower(msg)

 

if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then

selfSay('Hello ' .. creatureGetName(cid) .. '! I sell premiums and promotions.')

focus = cid

talk_start = os.clock()

 

elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then

selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')

 

elseif focus == cid then

talk_start = os.clock()

 

if msgcontains(msg, 'promotion') or msgcontains(msg, 'promote') then

if getPlayerVocation(cid) > 4 then

selfSay('Sorry, you are already promoted.')

talk_state = 0

elseif getPlayerLevel(cid) < 20 then

selfSay('Sorry, you need level 20 to buy promotion.')

talk_state = 0

elseif not isPremium(cid) then

selfSay('Sorry, you must be premium to buy promotion.')

talk_state = 0

else

selfSay('Do you want to buy promotion for 20k?')

talk_state = 1

end

 

elseif msgcontains(msg, 'premium') or msgcontains(msg, 'premmy') then

selfSay('Do you want to buy 7 days of premium for 7k?')

talk_state = 2

 

elseif talk_state == 1 then

if msgcontains(msg, 'yes') then

if pay(cid,20000) then

doPlayerSetVocation(cid, getPlayerVocation(cid)+4)

selfSay('You are now promoted!')

else

selfSay('Sorry, you do not have enough money.')

end

end

talk_state = 0

 

elseif talk_state == 2 then

if msgcontains(msg, 'yes') then

if pay(cid,7000) then

selfSay('/premium '.. creatureGetName(cid) ..', 7')

selfSay('You have 7 days of premium more!')

else

selfSay('Sorry, you do not have enough money.')

end

end

talk_state = 0

 

elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye, ' .. creatureGetName(cid) .. '!')

focus = 0

talk_start = 0

end

end

end

 

 

function onCreatureChangeOutfit(creature)

 

end

 

 

function onThink()

if (os.clock() - talk_start) > 30 then

if focus > 0 then

selfSay('Next Please...')

end

focus = 0

end

if focus ~= 0 then

if getDistanceToCreature(focus) > 5 then

selfSay('Good bye then.')

focus = 0

end

end

end

Link para o comentário
Compartilhar em outros sites

Poste o arquivo do NPC, não a script que ele usa.

O problema está nele.

 

 

tipo não é só este npc que fica parado são todos, mais usei este como base!

 

bom vou postar o server para voce ver se o problema é os arquivos do npc ou outras coisas

 

aqui esta o link do server:

 

http://www.4shared.com/file/ePHCIg2D/evolutions_076_Base.html

 

 

 

 

a e a versao do server é 7.9 caso queira entrar pra ver ou sei la :s!

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

×
×
  • Criar Novo...