VA

[Dúvida] Mappers Venham Ver.

Por Vampiresco, 11 de jan. de 2011 em Archived

otserv
tibia
20
1.8k
VampirescoV
11 de janeiro de 2011 às 00:01

Olá Xtibia.. tenho uma dúvida e espero que me respondam se possível, faz tempo que não mecho com isso e nem sei se é necessariamente sobre MAPPING, se postei no lugar errado favor mover.

 

È o seguinte galera, tenho um projeto de Pokémon Online como podem ver na minha assinatura.

E o meu sistema de surfing (Peguei no fórum)tem um grande problema.

Só pode nadar em uma determinada agua e o mapa e todo feito com outro tipo de agua.. (Id diferente).

Ou sejá, terei mesmo que passar a agua com o ID correto por cima de todas as aguas? meio trabalhoso não? ¬¬'

Creio que tenha uma maneira mais fácil.. por favor quem puder me ajudar eu ficaria GRATO.

AlphaLoveA
11 de janeiro de 2011 às 00:18

Creioo que é isso mesmo champz.

Passa por toda a Água.

É trabalhoso sim, maais é o unico jeeito (euaxo).

 

Att

VampirescoV
11 de janeiro de 2011 às 01:01

Eu também acho e tomara que nós dois estamos errados!

Mais obrigado por postar.

Se alguem tem uma solução mais simples, rapida sei lá poste!

11 de janeiro de 2011 às 01:10

a pelo amor de deus truta n precisa passa outra agua no se mapa é só vc adicionar no script o id dos outros tipos de agua

se vc puder postar mais informações sobre o script posso te ajudar ainda mais.

 

:D

VampirescoV
11 de janeiro de 2011 às 10:52

Graças ao bom Deus alguem vai me ajudar..

È para postar o Script de Sufing?

Posta oque devo por no XML também ^^

 

function onUse(cid, item, frompos, item2, topos)
local configs = {
[4647] = {x = -2, y = 0}, -- 4647 é o id da borda oeste (lado esquerdo do player) ----- Deixa assim
[4645] = {x = 2, y = 0}, -- 4645 é o id da borda leste (lado direito do player) ----- Deixa assim
[4646] = {x = 0, y = 2}, -- 4646 é o id da borda sul (abaixo do player) ----- Deixa assim
[4644] = {x = 0, y = -2}, -- 4644 é o id da borda norte (acima do player) ----- Deixa assim
}

local playerpos = getCreaturePosition(cid)
local pokes = {
["Poliwag"] = {lookType=278, speed = 210},
["Tentacruel"] = {lookType=185, speed = 430},
["Blastoise"] = {lookType=184, speed = 500},
["Dewgong"] = {lookType=183, speed = 401},
["Kabutops"] = {lookType=189, speed = 500},
["Omastar"] = {lookType=188, speed = 550},
["Gyarados"] = {lookType=187, speed = 610},
["Poliwrath"] = {lookType=190, speed = 410},
["Shiny Gyarados"] = {lookType=529, speed = 640},
["Shiny Seadra"] = {lookType=522, speed = 530},
["Shiny Tentacruel"] = {lookType=522, speed = 460},
["Squirtle"] = {lookType=273, speed = 280},
["Shiny Blastoise"] = {lookType=523, speed = 540},
["Wartotle"] = {lookType=275, speed = 350},
['Tentacool'] = {lookType=274, speed = 340},
['Staryu'] = {lookType=266, speed = 260},
['Starmie'] = {lookType=267, speed = 450},
['Golduck'] = {lookType=271, speed = 460},
['Poliwhirl'] = {lookType=137, speed = 340},
['Tentacool'] = {lookType=277, speed = 340},
['Goldeen'] = {lookType=268, speed = 220},
['Seaking'] = {lookType=269, speed = 350},
['Seadra'] = {lookType=270, speed = 270},
['Snorlax'] = {lookType=300, speed = 511},
['Vaporeon'] = {lookType=191, speed = 360},
}

if #getCreatureSummons(cid) <= 0 and getPlayerStorageValue(cid, 63215) <= 0 then
return doPlayerSendCancel(cid, "Você precisa de um pokemon para nadar.")
end

l = false
for i,x in pairs(pokes) do
if getPlayerStorageValue(cid, 63215) <= 0 and i:lower() == getCreatureName(getCreatureSummons(cid)[1]):lower() then
l = true
end
end

if not l and getPlayerStorageValue(cid, 63215) <= 0 then
return doPlayerSendCancel(cid, "Este pokemon nao possui a habilidade de nadar.")
end

if getPlayerStorageValue(cid, 63215) <= 0 then
doTeleportThing(cid, {x=playerpos.x+configs[item2.itemid].x, y=playerpos.y+configs[item2.itemid].y, z=playerpos.z})
setPlayerStorageValue(cid, 63215, 1)
doSetCreatureOutfit(cid, pokes[getCreatureName(getCreatureSummons(cid)[1])], -1)
doCreatureSay(cid, "Vamos nadar, "..getCreatureName(getCreatureSummons(cid)[1]), 1)
setPlayerStorageValue(cid, 61209, getCreatureMaxHealth(getCreatureSummons(cid)[1]))
setPlayerStorageValue(cid, 61210, getCreatureHealth(getCreatureSummons(cid)[1]))
doChangeSpeed(cid, pokes[getCreatureName(getCreatureSummons(cid)[1])].speed)
doRemoveCreature(getCreatureSummons(cid)[1])
else
doTeleportThing(cid, {x=playerpos.x-configs[item2.itemid].x, y=playerpos.y-configs[item2.itemid].y, z=playerpos.z})
setPlayerStorageValue(cid, 63215, 0)
doRemoveCondition(cid, CONDITION_OUTFIT)
local item = getPokeOutLive(cid)[1]
doCreatureSay(cid, "Vamos sair, " .. getItemAttribute(item, "poke"):match("This is (.-)'s pokeball."), 1)
pk = doSummonCreature(getItemAttribute(item, "poke"):match("This is (.-)'s pokeball."), getThingPosition(cid))
doConvinceCreature(cid, pk)
registerCreatureEvent(pk, "DiePoke")
registerCreatureEvent(cid, "PlayerPokeDeath")
registerCreatureEvent(cid, "LogoutPoke")
setCreatureMaxHealth(pk, getPlayerStorageValue(cid, 61209))
doCreatureAddHealth(pk, getPlayerStorageValue(cid, 61209))
doCreatureAddHealth(pk, getPlayerStorageValue(cid, 61210)-getPlayerStorageValue(cid, 61209))
doChangeSpeed(cid, getCreatureBaseSpeed(cid)-getCreatureSpeed(cid))
end
return TRUE
end

 

Grato =D :XTibia_smile:

Editado Janeiro 11 por Vampiresco

AlphaLoveA
11 de janeiro de 2011 às 12:40

@vinic

 

Cara, nãao tem nada a ve ¬¬'

como Que vooc vai adiciona no Script uma Agua que não tem no jogo.

¬¬'

é a mesma coisa que eu coloka em um script um ID: 9999999.

ele não vai adianTa naDa porque ele nao tem no jogo.

Então o jeito é mudar toda a água mesmo.

 

ajudei ?

REP +

 

att

VampirescoV
11 de janeiro de 2011 às 13:52

E se eu add no Script todos os ids de todas as aguas?

Se for possivel poste tutorial.

Editado Janeiro 11 por Vampiresco

cavernaC
11 de janeiro de 2011 às 14:04

Acredito que isso ai tem nada ver com mapping meu caro.

AlphaLoveA
11 de janeiro de 2011 às 14:17

Creio que não adianta vooc adicionar no Script todas as aguas.

porque se ela não conter no jogo, de nada vai adianta.

ZeloxZ
11 de janeiro de 2011 às 14:32

Sim é o unico jeito (Que eu conheço) Talves de para mudar no Script o tipo de agua que ele surfa (Mas não é certeza).

DretiDemonD
11 de janeiro de 2011 às 14:35

Intaum que eu saiba tem de ter o Title de água "andavel" por onde você for passa e mais o script para que o player possa surfar, e eu não conheço nenhum outro método além de ir Title por Title.

kevinvpssK
11 de janeiro de 2011 às 14:50

Deve ter outro jeitinho pow :S

Editado Janeiro 11 por kevinvpss

VampirescoV
11 de janeiro de 2011 às 14:52

Não acredito =/

Vai atrasar bastante o projeto, mesmo assim eu tenho a esperança de que alguem possa me ajudar de algum outro jeito, irei esplicar mais uma vez.

 

Só pode nadar nas aguas com o ID: 4820.

Pq o XML não tem este ID? No XML tá assim olha:

 

<action itemid="4647;4645;4646;4644" event="script" value="surf.lua"/> 

 

Help-me :S

AlphaLoveA
11 de janeiro de 2011 às 16:21

Mano, muda tudo :S

Para de preguiça champz.

Nesse tempo aii ja daria pra tu ter mudado tudo de boua.

Go go go.

VampirescoV
11 de janeiro de 2011 às 16:42

kkkkkkkkkkkkkkkkkkkkkk namoral nem dava :S

E muita coisa, tente imaginar cara?!

E como eu saberia que já coloquei agua certa na quele determinado lugar? Gravando de cabeça?

Tenso, SOS!