Ir para conteúdo
  • 0

Aperfeiçoar este Script!


bizinho

Pergunta

Bom, Fiz Um Pedido Aqui No Forum, Porem Quem o Fez Não Sabia Fazer Direito! (mt menos eu)

O Script que pedi era para : tenho um item(que no meu sv chama card [vi isto em outro sv]) que quando eu usaste ele no corpo de uma criatura (pokemon) criaste um shiny do mesmo!

(cada card para um pokemon(corpo) exemplo : tenho a carta "bulbasaur" se eu usar ela no bulbasaur morto,invocaria ele em shiny! e se eu tentasse usar em qualquer outro lugar não aconteceria nada!

Me Mandaram o Seguinte Script :

local pos = {x = 94, y = 129, z = 7} -- Aqui é a posição pra onde o teleport vai levar o player
local pokemon = "Pikachu" -- Aqui é o nome do pokemon (tem que ser entre aspas)

function onKill(cid, target, lastHit)
if getCreatureName(target) == pokemon and getPlayerStorageValue(cid, 5558) < 1 then
doTeleportThing(cid, pos)
doPlayerSetStorageValue(cid, 5558, 1)
doSendMagicEffect(getThingPos(cid), 17)
else return true
end

end

Porém Não Funcionou! dava um certo erro! e nada acontecia!

Depois de tentar mt(não sei nada msm de script)

consegui faser ele funcionar desta seguinte forma:

local pok = {
[12732] = { pokemon = "Shiny Charmander"},
[12729] = { pokemon = "Shiny Bulbasaur"},
[12733] = { pokemon = "Shiny Charmeleon"},
[12734] = { pokemon = "Shiny Charizard"},
[12730] = { pokemon = "Shiny Ivysaur"},
[12731] = { pokemon = "Shiny Venusaur"},
}

function onUse(cid, item, topos, item2, frompos)

local p = pok[item.itemid]
doCreateMonster(p.pokemon, getThingPos(cid))
doSendMagicEffect(getCreaturePosition(cid), 18) -- 17 effect
doPlayerSendTextMessage(cid,22,"Criatura Invocada Matea e Tente Capturala") -- Msg que ira aparecer
doRemoveItem(item.uid, 1)
return true
end

 

Não sei se está certo pois como falei não sei nada sobre script so fui olhando e tentando entender! e fiz na sorte! (pode ser facil para alguns mais para min foi dificil lll)

Só Que Ai Que Vem o Problema! o item pose ser usado em qualquer lugar!

QUERO PEDIR SE ALGUM SABE COLOCAR ESTE SCRIPT PARA USAR APENAS NO CORPSET DA CARTA!

exemplo: bulba card usa no corpo do bulbasaur! etc

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

4 respostass a esta questão

Posts Recomendados

  • 0

Tome ai meu caro colega.

1 -

 

 

local pos = {x = 94, y = 129, z = 7} -- Aqui é a posição pra onde o teleport vai levar o player
local pokemon = "Pikachu" -- Aqui é o nome do pokemon (tem que ser entre aspas)

function onKill(cid, target, lastHit)

if getPlayerStorageValue(cid, 5558) < 1 then
return true
end

if getCreatureName(target) == pokemon then
doTeleportThing(cid, pos)
doPlayerSetStorageValue(cid, 5558, 1)
doSendMagicEffect(getThingPos(cid), 17)
return true
end
end

 

 

2 -

 

 

 

local pok = {
[12732] = { pokemon = "Shiny Charmander"},
[12729] = { pokemon = "Shiny Bulbasaur"},
[12733] = { pokemon = "Shiny Charmeleon"},
[12734] = { pokemon = "Shiny Charizard"},
[12730] = { pokemon = "Shiny Ivysaur"},
[12731] = { pokemon = "Shiny Venusaur"},
}

function onUse(cid, item, topos, item2, frompos)

local p = pok[item.itemid]
doCreateMonster(p.pokemon, getThingFromPos(pos))
doSendMagicEffect(getCreaturePosition(cid), 18) -- 17 effect
doPlayerSendTextMessage(cid,22,"Criatura Invocada Matea e Tente Capturala") -- Msg que ira aparecer
doRemoveItem(item.uid, 1)
doRemoveItem(getThingFromPos(pos), 1)
return true
end

 

 

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

  • 0

Tente desta seguinte maneira:

 

 

function onUse(cid, item, fromPosition, itemEx)

    local corpses = {
        [12732] = {p = "Shiny Charmander", c = 4311},
        [12729] = {p = "Shiny Bulbasaur", c = 5311},
        [12733] = {p = "Shiny Charmeleon", c = 9931},
        [12734] = {p = "Shiny Charizard", c = 5311},
        [12730] = {p = "Shiny Ivysaur", c = 3811},
        [12731] = {p = "Shiny Venusaur", c = 3354},
    }
    local p = pok[item.itemid]


    if itemEx.itemid ~= p.c then
        return doPlayerSendCancel(cid, "Sorry, not is possible.")
    end

    doRemoveItem(item.uid, 1)
    doRemoveItem(itemEx.uid, 1)
    doCreateMonster(p.p, fromPosition)
    doSendMagicEffect(fromPosition, 18)
    doPlayerSendTextMessage(cid, 22, "[Card] Você invocou uma criatura, tente capturá-la.")
    return true
end

 

Na tabela, entre [ e ] você coloca o itemID do card. Entre { e }, você encontra a variável P contendo o nome do pokémon a ser invocado e a variável C contendo o itemID do corpse dele sem ser shiny.

 

#GoodLuck.

Link para o comentário
Compartilhar em outros sites

  • 0

obg vou tentar

 

------------------------edit --- roksas infelizmente não pegou ou quasi isto.... tipo

primeiro não pegou eu axo q por causa do local p = pok[item.itemid] sendo que ta local corpses = {

 

pok - corpses..... msm eu modificando deu um erro cannot crate monster shiny bulbasaur etc

 

 

Concerteiiii!!!! agora pegou obg !! ficou assim :

 

function onUse(cid, item, fromPosition, itemEx)

local pok = {
[12732] = {p = "Shiny Charmander", c = 11852},
[12729] = {p = "Shiny Bulbasaur", c = 11847},
[12733] = {p = "Shiny Charmeleon", c = 11853},
[12734] = {p = "Shiny Charizard", c = 11851},
[12730] = {p = "Shiny Ivysaur", c = 11894},
[12731] = {p = "Shiny Venusaur", c = 11977},
}
local p = pok[item.itemid]
if itemEx.itemid ~= p.c then
return doPlayerSendCancel(cid, "Sorry, not is possible.")
end
doRemoveItem(item.uid, 1)
doRemoveItem(itemEx.uid, 1)
doCreateMonster(p.p, getThingPos(cid))
doSendMagicEffect(fromPosition, 18)
doPlayerSendTextMessage(cid, 22, "[Card] Você invocou uma criatura, tente capturá-la.")
return true
end

kttalan ... ou nao intendi mt bem teleport etc?? ... mas vc me ajudou mt kkkk fez o começo la para min kkkkkkk obrigadooo!

Roksas vc tbm me ajudou mt para completar o script agr posso faser todo o resto dos poke... ve se tem algum bug ai!

 

axo que pode fexar o topico resolvido

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

×
×
  • Criar Novo...