Ir para conteúdo
  • 0

Erro Estranho Na Distro


Developer Berg

Pergunta

Olá Gente, queria pedir a ajuda de vez, é o seguinte, quando eu uso o Surf no meu poketibia, ele surfa normal, mas tem tipo umas partes na água que ele para de surfar e fica como se tivesse no solo, já verifiquei se é algo no item.otb, ou na sprite, mas ta tudo normal, e se eu ficar tipo entrando e saindo desses locais que ele para de surfar, o player n pode mais se mexer, e se ele tentar ir pra qual quer lado, aparece esse erro na distro.

 

 

 

Script Do Surf.lua

 

 

 

local function doSendMagicEffecte(pos, effect)
	addEvent(doSendMagicEffect, 50, pos, effect)
end

local waters = {11756, 4614, 4615, 4616, 4617, 4618, 4619, 4608, 4609, 4610, 4611, 4612, 4613, 7236, 4614, 4615, 4616, 4617, 4618, 4619, 4620, 4621, 4622, 4623, 4624, 4625, 4665, 4666, 4820, 4821, 4822, 4823, 4824, 4825}
                                                                     --alterado v2.5
local flie = {'11756', '4614', '4615', '4616', '4617', '4618', '4619', '4608', '4609', '4610', '4611', '4612', '4613', '7236', '4614', '4615', '4616', '4617', '4618', '4619', '4620', '4621', '4622', '4623', '4624', '4625', '4665', '4666', '4820', '4821', '4822', '4823', '4824', '4825'}
--alterado v2.6 tabela agora em configuration.lua!

local premium = false

function onStepIn(cid, item, position, fromPosition)

if not isPlayer(cid) or isInArray({5, 6}, getPlayerGroupId(cid)) then --alterado v2.9
return true
end
if getPlayerStorageValue(cid, 75846) >= 1 then return true end   --alterado v2.9

if isPlayer(cid) and getCreatureOutfit(cid).lookType == 814 then return false end -- TV

if isPlayer(cid) and not isPremium(cid) and premium == true then
doTeleportThing(cid, fromPosition, true)
doPlayerSendCancel(cid, "Only premium members are allowed to surf.")
return true
end

if getCreatureOutfit(cid).lookType == 316 or getCreatureOutfit(cid).lookType == 648 then
doSendMagicEffect(fromPosition, 136)
end

if (getPlayerStorageValue(cid, 63215) >= 1 or getPlayerStorageValue(cid, 17000) >= 1) then
return true
end

if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "You need a pokemon to surf.")
doTeleportThing(cid, fromPosition, false)
return true
end

if (not isInArray(specialabilities["surf"], getPokemonName(getCreatureSummons(cid)[1]))) then  --alterado v2.6
doPlayerSendCancel(cid, "This pokemon cannot surf.")
doTeleportThing(cid, fromPosition, false)
return true
end

if getPlayerStorageValue(cid, 5700) == 1 then
   doPlayerSendCancel(cid, "You can't do that while is mount in a bike!")
   doTeleportThing(cid, fromPosition, false)
   return true
end

if getPlayerStorageValue(cid, 212124) >= 1 then         --alterado v2.6
   doPlayerSendCancel(cid, "You can't do it with a pokemon with mind controlled!")
   doTeleportThing(cid, fromPosition, false)
   return true
end

if getPlayerStorageValue(cid, 52480) >= 1 then
   doPlayerSendCancel(cid, "You can't do it while a duel!")  --alterado v2.6
   doTeleportThing(cid, fromPosition, false)
   return true
end

if getPlayerStorageValue(cid, 6598754) == 1 or getPlayerStorageValue(cid, 6598755) == 1 then 
   doPlayerSendCancel(cid, "You can't do it while in the PVP Zone!")   --alterado v2.7
   doTeleportThing(cid, fromPosition, false)
   return true
end
                                        --alterado v2.6
doSetCreatureOutfit(cid, {lookType = surfs[getPokemonName(getCreatureSummons(cid)[1])].lookType + 351}, -1) 

doCreatureSay(cid, ""..getPokeName(getCreatureSummons(cid)[1])..", lets surf!", 1)
doChangeSpeed(cid, -(getCreatureSpeed(cid)))

local speed = 75 + PlayerSpeed + getSpeed(getCreatureSummons(cid)[1]) * 8 * speedRate
setPlayerStorageValue(cid, 54844, speed)
doChangeSpeed(cid, speed)

local pct = getCreatureHealth(getCreatureSummons(cid)[1]) / getCreatureMaxHealth(getCreatureSummons(cid)[1])

local item = getPlayerSlotItem(cid, 8)  --alterado v2.8
doItemSetAttribute(item.uid, "hp", pct)

doRemoveCreature(getCreatureSummons(cid)[1])

if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) <= 0 then
   addEvent(sendAuraEffect, 120, cid, auraSyst[getItemAttribute(item.uid, "aura")])    --alterado v2.8
end

if useOTClient then
   doPlayerSendCancel(cid, '12//,hide') --alterado v2.8
end

addEvent(setPlayerStorageValue, 100, cid, 63215, 1)

return true
end

local direffects = {30, 49, 9, 51}

function onStepOut(cid, item, position, fromPosition)

if isPlayer(cid) and getCreatureOutfit(cid).lookType == 814 then return false end

	local checkpos = fromPosition
		checkpos.stackpos = 0

	if isInArray(waters, getTileInfo(checkpos).itemid) then

		if getPlayerStorageValue(cid, 63215) >= 1 or getPlayerStorageValue(cid, 17000) >= 1 then

			doSendMagicEffecte(fromPosition, direffects[getCreatureLookDir(cid) + 1])

		end

	end

	if not isInArray(waters, getTileInfo(getThingPos(cid)).itemid) then

		if getPlayerStorageValue(cid, 17000) >= 1 then return true end
		if getPlayerStorageValue(cid, 63215) <= 0 then return true end

		doRemoveCondition(cid, CONDITION_OUTFIT)
		setPlayerStorageValue(cid, 63215, -1)

		local item = getPlayerSlotItem(cid, 8)
		local pokemon = getItemAttribute(item.uid, "poke")
		local x = pokes[pokemon]

		if not x then return true end

		if getItemAttribute(item.uid, "nick") then
			doCreatureSay(cid, getItemAttribute(item.uid, "nick")..", I'm tired of surfing!", 1)
		else
			doCreatureSay(cid, getItemAttribute(item.uid, "poke")..", I'm tired of surfing!", 1)
		end

		doSummonMonster(cid, pokemon)

		local pk = getCreatureSummons(cid)[1]

		if not isCreature(pk) then
			pk = doCreateMonster(pokemon, backupPos)
			if not isCreature(pk) then
				doPlayerSendCancel(cid, "You can't stop surfing here.")
				doTeleportThing(cid, fromPosition, false)
			return true
			end
			doConvinceCreature(cid, pk)
		end

		doChangeSpeed(pk, getCreatureSpeed(cid))
		doChangeSpeed(cid, -getCreatureSpeed(cid))
		doRegainSpeed(cid)      --alterado v2.6
        
		doTeleportThing(pk, fromPosition, false)
		doTeleportThing(pk, getThingPos(cid), true)
		doCreatureSetLookDir(pk, getCreatureLookDir(cid))

		adjustStatus(pk, item.uid, true, false, true)
		
		if useOTClient then
           doPlayerSendCancel(cid, '12//,show') --alterado v2.8
        end

	end

return true
end

 

 

[02/01/2016 01:43:29] [Error - MoveEvent::executeStep] Call stack overflow.
[02/01/2016 01:43:29] [Error - MoveEvent::executeStep] Call stack overflow.
[02/01/2016 01:43:29] [Error - MoveEvent::executeStep] Call stack overflow.
[02/01/2016 01:43:29] [Error - MoveEvent::executeStep] Call stack overflow.

print de como fica o surf.

post-381687-0-72766600-1451707013_thumb.png

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

5 respostass a esta questão

Posts Recomendados

  • 0

Creio que esse erro não seja no arquivo surf.lua, mas em outro arquivo da pasta movements.

Muitos PDA tem esse erro que atrapalha o projeto, junto com o erro do map.h que poucos conseguiram resolver.

 

(Curti a Healthbar, tenho uma parecida :p )

Link para o comentário
Compartilhar em outros sites

  • 0

Creio que esse erro não seja no arquivo surf.lua, mas em outro arquivo da pasta movements.

Muitos PDA tem esse erro que atrapalha o projeto, junto com o erro do map.h que poucos conseguiram resolver.

 

(Curti a Healthbar, tenho uma parecida :p )

tem como saber em qual script é que ta dando esse erro ? como localizar ela ? e esse erro do map.h ? poderia falar mas sobre ele por favor kk, e da pra tirar ele com a source do server ?

Link para o comentário
Compartilhar em outros sites

  • 0

tem como saber em qual script é que ta dando esse erro ? como localizar ela ? e esse erro do map.h ? poderia falar mas sobre ele por favor kk, e da pra tirar ele com a source do server ?

Sobre o erro callstack overflow, tu tem que dar uma geral em todos os Scripts da pasta movements.

Sobre o erro map.h, acontece quando o server tem em média 120+ players online, aí começa a aparecer esse erro ( que é da distro ) aí o server cai. Caso tenha a source, poderá resolver.

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

  • 0

Sobre o erro callstack overflow, tu tem que dar uma geral em todos os Scripts da pasta movements.

Sobre o erro map.h, acontece quando o server tem em média 120+ players online, aí começa a aparecer esse erro ( que é da distro ) aí o server cai. Caso tenha a source, poderá resolver.

o callstarck conseguir resolver, era um item da água que n tava configurado no surf.lua, mas esse map.h, tem como saber se meu pda ta com ele ? pq ainda to sem a vps para testar os 120 players, e se tiver tem algum tutorial ensinando a tirar ele ? eu to com as sources do meu server.

Link para o comentário
Compartilhar em outros sites

  • 0

bem,isso é quando um player passa em alguma tipo de piso que não era o permitido passar,tipo a agua,ou rocks.

dando uma geral no script,pode ser alguma função nas sources não se aceitando com algum script do movement!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...