Muito bom
Stylo maldoso Parabéns ;D
Por StyloMaldoso, 01 de fev. de 2013 em Tutoriais para Iniciantes
info
Grupo: Artesão
Registrado: 22/07/12
Posts: 121
Reputação: +1

Muito bom
Stylo maldoso Parabéns ;D
info
Grupo: Artesão
Registrado: 27/04/11
Posts: 112
Reputação: +2

no meu da um erro no login.lua
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:onLogin
[04/02/2013 04:19:58] Description:
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: attempt to call global 'doPlayerChangeModeIcon' (a nil value)
[04/02/2013 04:19:58] stack traceback:
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: in function <data/creaturescripts/scripts/login.lua:6>
Ta muito bom o tutorial, porém acho que se fosse para adicionar o Icon System em outros servidores Exemplo: Pda Slicer seria melhor *-* mas mesmo assim rep+
Editado Fevereiro 4 por DidoGunner
info
Grupo: Visconde
Registrado: 10/09/12
Posts: 476
Reputação: +2
Char no Tibia: Esqueci

@Didogunner, Ele deu um exemplo de um servidor pra adiconar o pokeXextreme o serve do smix, nele já contem as scritper e era só um modo de explicar, mas funciona no pda by slicer sim, no meu tá funcionando.
E posta o login.lua como vc quer que agente resolva seu error se vc nem postou ele ?
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:onLogin [04/02/2013 04:19:58] Description: [04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: attempt to call global 'doPlayerChangeModeIcon' (a nil value) [04/02/2013 04:19:58] stack traceback: [04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: in function <data/creaturescripts/scripts/login.lua:6>
Esse erro é causando quando você reloga seu char, e tenta trasforma algum pokemon para Mode Icon, e sendo que não tem o icone daquele pokemon, ai impede de o player 'logar', intão faz assim.. fica só com 1 pokemon backpack (que voce tenha feito o icone tudo certinho) e reloga.. eu tinha um servidor do pxo com todos icones,eu perdi varios arquivo, se não iria posta pra dowload, abraços.
Editado Fevereiro 4 por StyloMaldoso
info
Grupo: Artesão
Registrado: 27/04/11
Posts: 112
Reputação: +2

Bom man, no meu nenhum char consegue logar ;/ ( eu ja tinha testado ficar só com uma pokeball ;( )
Login.lua
local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
function onLogin(cid)
if getPlayerLevel(cid) >= 1 and getPlayerLevel(cid) <= 10 then --alterado v1.8
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, 0)
else
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, (getPlayerLevel(cid) >= 200 and 100 or math.floor(getPlayerLevel(cid)/2)) )
end
doCreatureSetDropLoot(cid, false)
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to manage your account and if you want to start over then type 'cancel'.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type 'account' to create an account or type 'recover' to recover an account.")
end
if getCreatureName(cid) == "Account Manager" then
local outfit = {}
if accountManagerRandomPokemonOutfit then
outfit = {lookType = getPokemonXMLOutfit(oldpokedex[math.random(151)][1])}
else
outfit = accountManagerOutfit
end
doSetCreatureOutfit(cid, outfit, -1)
return true
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
local outfit = {}
if getPlayerVocation(cid) == 0 then
doPlayerSetMaxCapacity(cid, 0)
doPlayerSetVocation(cid, 1)
setCreatureMaxMana(cid, 6)
doPlayerAddSoul(cid, -getPlayerSoul(cid))
setPlayerStorageValue(cid, 19898, 0)
if getCreatureOutfit(cid).lookType == 128 then
outfit = {lookType = 510, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
elseif getCreatureOutfit(cid).lookType == 136 then
outfit = {lookType = 511, lookHead = math.random(0, 132), lookBody = math.random(0, 132), lookLegs = math.random(0, 132), lookFeet = math.random(0, 132)}
end
doCreatureChangeOutfit(cid, outfit)
end
registerCreatureEvent(cid, "dropStone") --alterado v1.7
registerCreatureEvent(cid, "ShowPokedex") --alterado v1.6
registerCreatureEvent(cid, "ClosePokedex") --alterado v1.6
registerCreatureEvent(cid, "WatchTv")
registerCreatureEvent(cid, "StopWatchingTv")
registerCreatureEvent(cid, "WalkTv")
registerCreatureEvent(cid, "RecordTv")
registerCreatureEvent(cid, "PlayerLogout")
registerCreatureEvent(cid, "WildAttack")
registerCreatureEvent(cid, "Idle")
registerCreatureEvent(cid, "PokemonIdle")
registerCreatureEvent(cid, "EffectOnAdvance")
registerCreatureEvent(cid, "GeneralConfiguration")
registerCreatureEvent(cid, "SaveReportBug") --ReportBug
registerCreatureEvent(cid, "LookSystem")
registerCreatureEvent(cid, "T1")
registerCreatureEvent(cid, "T2")
registerCreatureEvent(cid, "task_count")
if getPlayerStorageValue(cid, 99284) == 1 then
setPlayerStorageValue(cid, 99284, -1)
end
if getPlayerStorageValue(cid, 6598754) >= 1 or getPlayerStorageValue(cid, 6598755) >= 1 then
setPlayerStorageValue(cid, 6598754, -1)
setPlayerStorageValue(cid, 6598755, -1)
end
doChangeSpeed(cid, -(getCreatureSpeed(cid)))
--///////////////////////////////////////////////////////////////////////////--
local storages = {17000, 63215, 17001, 13008, 5700}
for s = 1, #storages do
if not tonumber(getPlayerStorageValue(cid, storages)) then
if s == 3 then
setPlayerStorageValue(cid, storages, 1)
elseif s == 4 then
setPlayerStorageValue(cid, storages, -1)
else
if isBeingUsed(getPlayerSlotItem(cid, 8).itemid) then
setPlayerStorageValue(cid, storages, 1) --alterado v1.6
else
setPlayerStorageValue(cid, storages, -1)
end
end
doPlayerSendTextMessage(cid, 27, "Sorry, but a problem occurred on the server, but now it's alright")
end
end
--/////////////////////////////////////////////////////////////////////////--
if getPlayerStorageValue(cid, 17000) >= 1 then -- fly
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
doRemoveCondition(cid, CONDITION_OUTFIT)
doSetCreatureOutfit(cid, {lookType = flys[poke][1] + 351}, -1)
local apos = getFlyingMarkedPos(cid)
apos.stackpos = 0
if getTileThingByPos(apos).itemid <= 2 then
doCombatAreaHealth(cid, FIREDAMAGE, getFlyingMarkedPos(cid), 0, 0, 0, CONST_ME_NONE)
doCreateItem(460, 1, getFlyingMarkedPos(cid))
end
doTeleportThing(cid, apos, false)
if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then
sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8
end
local posicao = getTownTemplePosition(getPlayerTown(cid))
markFlyingPos(cid, posicao)
elseif getPlayerStorageValue(cid, 63215) >= 1 then -- surf
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
doSetCreatureOutfit(cid, {lookType = surfs[poke].lookType + 351}, -1) --alterado v1.6
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then
sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8
end
elseif getPlayerStorageValue(cid, 17001) >= 1 then -- ride
local item = getPlayerSlotItem(cid, 8)
local poke = getItemAttribute(item.uid, "poke")
if rides[poke] then
doChangeSpeed(cid, getPlayerStorageValue(cid, 54844))
doRemoveCondition(cid, CONDITION_OUTFIT)
doSetCreatureOutfit(cid, {lookType = rides[poke][1] + 351}, -1)
if getItemAttribute(item.uid, "boost") and getItemAttribute(item.uid, "boost") >= 50 and getPlayerStorageValue(cid, 42368) >= 1 then
sendAuraEffect(cid, auraSyst[getItemAttribute(item.uid, "aura")]) --alterado v1.8
end
else
setPlayerStorageValue(cid, 17001, -1)
doRegainSpeed(cid) --alterado v1.6
end
local posicao2 = getTownTemplePosition(getPlayerTown(cid))
markFlyingPos(cid, posicao2)
elseif getPlayerStorageValue(cid, 13008) >= 1 then -- dive
if not isInArray({5405, 5406, 5407, 5408, 5409, 5410}, getTileInfo(getThingPos(cid)).itemid) then
setPlayerStorageValue(cid, 13008, 0)
doRegainSpeed(cid) --alterado v1.6
doRemoveCondition(cid, CONDITION_OUTFIT)
return true
end
if getPlayerSex(cid) == 1 then
doSetCreatureOutfit(cid, {lookType = 1034, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
else
doSetCreatureOutfit(cid, {lookType = 1035, lookHead = getCreatureOutfit(cid).lookHead, lookBody = getCreatureOutfit(cid).lookBody, lookLegs = getCreatureOutfit(cid).lookLegs, lookFeet = getCreatureOutfit(cid).lookFeet}, -1)
end
doChangeSpeed(cid, 800)
elseif getPlayerStorageValue(cid, 5700) > 0 then --bike
doChangeSpeed(cid, -getCreatureSpeed(cid))
doChangeSpeed(cid, getPlayerStorageValue(cid, 5700)) --alterado v1.8
if getPlayerSex(cid) == 1 then
doSetCreatureOutfit(cid, {lookType = 1394}, -1)
else
doSetCreatureOutfit(cid, {lookType = 1393}, -1)
end
else
doRegainSpeed(cid) --alterado v1.6
end
if getPlayerStorageValue(cid, 22545) >= 1 then
setPlayerStorageValue(cid, 22545, -1) --alterado v1.4
doTeleportThing(cid, getClosestFreeTile(cid, posBackGolden), false)
setPlayerRecordWaves(cid) --alterado v1.7
end
if useKpdoDlls then
doUpdateMoves(cid)
doUpdatePokemonsBar(cid)
end
doPlayerChangeModeIcon(cid)
return true
end
Erro
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:onLogin
[04/02/2013 04:19:58] Description:
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: attempt to call global 'doPlayerChangeModeIcon' (a nil value)
[04/02/2013 04:19:58] stack traceback:
[04/02/2013 04:19:58] data/creaturescripts/scripts/login.lua:210: in function <data/creaturescripts/scripts/login.lua:6>
"Bom.. como o server dele já vem istalado o systema de icon system fica até mais facil"
Pra mim ele ensinou no server do smix que ja tem todos arquivos ;o
mas já que o jose falou que serve pra qualquer um o tutorial, aconselho a colocar no tutorial os arquivos que faltam então ;o o login.lua e iconSys.lua que sem isso ai que não funcionaria nada em outro servidor mesmo ;X
Editado Fevereiro 4 por DidoGunner
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

Cara, minha intenção com o topico foi a como CRIAR novos icone no server do Smix, quem sabe eu ensino a adicionar o systema no meu servidor né?
tente usa o systema de icon desse servídor aqui.
http://www.4shared.com/rar/E-XniCAP/PokeXtreme_-_Beta.html?
Creditos
Smix !
info
Grupo: Artesão
Registrado: 27/04/11
Posts: 112
Reputação: +2

É então, eu entendi seu tópico ^^
Mas é que o jose tinha falado que serve pra colocar me qualquer servidor, ai eu completei falando que não... que ai precisaria de mais arquivos para ser colocado em outro ;o
Bom vou testar com esse beta ai, se mudar algo eu comento aqui
info
Grupo: Campones
Registrado: 26/03/12
Posts: 43
Reputação: +11

@StyloMaldoso
tem um bug na great ball ela nao vira icon, vc sabe arrumar isso?
---Achei o Bug
--
para resolver que a great ball vire icon.
vá em data/lib/ -- abra o arquivo IconSys.lua e em
elseif x and getPlayerSlotItem(cid, 8).itemid == 1469 then -- Greatball
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.on)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "no")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
elseif x and getPlayerSlotItem(cid, 8).itemid == 1471 then -- Greatball Morta
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.off)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "yes")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
elseif x and getPlayerSlotItem(cid, 8).itemid == 1470 then -- Greatball Usada
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.use)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "no")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
deixe assim:
elseif x and getPlayerSlotItem(cid, 8).itemid == 11832 then -- Greatball
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.on)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "no")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
elseif x and getPlayerSlotItem(cid, 8).itemid == 11834 then -- Greatball Morta
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.off)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "yes")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
elseif x and getPlayerSlotItem(cid, 8).itemid == 11833 then -- Greatball Usada
doTransformItem(getPlayerSlotItem(cid, 8).uid, x.use)
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "ball", "greatball")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "morta", "no")
doItemSetAttribute(getPlayerSlotItem(cid, 8).uid, "icone", "yes")
dpois desça um pouco e logo achara assim:
local balls = getItemsInContainerById(bp.uid, 1471) ------ Greatball
if #balls >= 1 then
for _, ball in pairs (balls) do
local x = icons[getItemAttribute(ball, "poke")]
doTransformItem(balll, x.off)
doItemSetAttribute(ball, "ball", "greatball")
doItemSetAttribute(ball, "morta", "yes")
doItemSetAttribute(ball, "icone", "yes")
end
end
local balls = getItemsInContainerById(bp.uid, 1469) --- Greatball morta
if #balls >= 1 then
for _, ball in pairs (balls) do
local x = icons[getItemAttribute(ball, "poke")]
doTransformItem(ball, x.on)
doItemSetAttribute(ball, "ball", "greatball")
doItemSetAttribute(ball, "morta", "no")
doItemSetAttribute(ball, "icone", "yes")
end
end
e deixe:
local balls = getItemsInContainerById(bp.uid, 11832) ------ Greatball
if #balls >= 1 then
for _, ball in pairs (balls) do
local x = icons[getItemAttribute(ball, "poke")]
doTransformItem(balll, x.off)
doItemSetAttribute(ball, "ball", "greatball")
doItemSetAttribute(ball, "morta", "yes")
doItemSetAttribute(ball, "icone", "yes")
end
end
local balls = getItemsInContainerById(bp.uid, 11834) --- Greatball morta
if #balls >= 1 then
for _, ball in pairs (balls) do
local x = icons[getItemAttribute(ball, "poke")]
doTransformItem(ball, x.on)
doItemSetAttribute(ball, "ball", "greatball")
doItemSetAttribute(ball, "morta", "no")
doItemSetAttribute(ball, "icone", "yes")
end
end
desça mais ate achar:
elseif pokeball == "greatball" and mortano == "no" then
doTransformItem(ball, 1469)
doItemSetAttribute(ball, "icone", "no")
elseif pokeball == "greatball" and mortano == "yes" then
doTransformItem(ball, 1471)
doItemSetAttribute(ball, "icone", "no")
e deixe assim:
elseif pokeball == "greatball" and mortano == "no" then
doTransformItem(ball, 11832)
doItemSetAttribute(ball, "icone", "no")
elseif pokeball == "greatball" and mortano == "yes" then
doTransformItem(ball, 11834)
doItemSetAttribute(ball, "icone", "no")
Bom, é isso ae ![]()
OBS: eu so troquei o id da great ball que estava errado nos 3 lugares.
Editado Fevereiro 5 por mauricio10984
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

Cara valeu ae, eu também tava achando estranho a great ball não trasforma, também achei que fosse os IDS, obrigado por ajudar.
Espero que você ajude outras pessoas que utilizão esse systema que podem resolver esse bug, abraços.
info
Grupo: Visconde
Registrado: 10/09/12
Posts: 476
Reputação: +2
Char no Tibia: Esqueci

Alguém ae conseguil resover o bug de quando tipo o poke tava numa batalha contra outro e ele perde a batalha, ai ele fica derrotado, ai quando agente vai na nurse joy e fala hi a ball bão volta pra on ? e se agente tenta chamar o poke pra fora não vai e tenta usar a coownld bar ai chama o poke exemplo o blastoise ai, a o poke sai pra fora mais não fica com a ball on e sim vira o item dps do item.otb digamos no item.otb tem os icones do poke on e dps tem bola, akele do cp de pxg a vermelha, ai quando chama o poke pra fora usando coolwnd bar, inves de voltar a ball pra on ele vira o item proximo da item.otb que séria dps dos icones a ball vermehlaha akela do cp da pxg? --essa ball foi um exemplo
Não vi o meus créditos sobre o sistema, na primeira página. Pode resolver isso?
info
Grupo: Infante
Registrado: 25/01/12
Posts: 1.6k
Reputação: +330

Eu colokei o link do dowload do seu servidor que esta indo a sua pagína, acho se alguem abaxar ira te dar o rep.
2* não postei seu 'systema' aqui, e sim fiz um tutorial ensinando, mais não vo discuti por isso.
info
Grupo: Campones
Registrado: 19/09/08
Posts: 39
Reputação: 0
Char no Tibia: nohave

Ola tenho 2 duvidas primeiro, é obrigatorio ussa esse cliente? e segunda se for ele tem barra de moves pq se n poder usar otro sem barra de moves e foda ;s
info
Grupo: Campones
Registrado: 07/05/11
Posts: 39
Reputação: +1
Char no Tibia: Mystic Chem

alguém ajuda?
o meu esta dano esse erro:
[17/02/2013 06:28:35] [Error - Action Interface]
[17/02/2013 06:28:35] data/actions/scripts/iconSysPortrait.lua:onUse
[17/02/2013 06:28:35] Description:
[17/02/2013 06:28:35] data/actions/scripts/iconSysPortrait.lua:3: attempt to index local 'x' (a nil value)
[17/02/2013 06:28:35] stack traceback:
[17/02/2013 06:28:35] data/actions/scripts/iconSysPortrait.lua:3: in function <data/actions/scripts/iconSysPortrait.lua:1>
quando clico no portrait
Editado Fevereiro 17 por MysticChem
info
Grupo: Visconde
Registrado: 10/09/12
Posts: 476
Reputação: +2
Char no Tibia: Esqueci
@Slicer desculpa, era que eu tinha visto no conteudos do topico do smix antes de ele removi eu tinha copiado pra o meu pc , ai vi e tava dakele jeito malz.
Editado Fevereiro 2 por josegremista