Ir para conteúdo

[Encerrado] [Encerrado] Helping Card (POKEMON AJUDANTE)


Josegvb

Posts Recomendados

Bem, por enquanto está assim:

 

 

 

no caso seria o amuleto do entei, mas já estão todos funcionais: 

 

local shinycard = {[clan1] = {"Dragon", "Dragon lord", "Cyclops"},[clan2] = {"Rabbit", "orc"},time = 60,id =  3976}local amulets = {[1445] = {"Entei"},  -- entei[5591] = {"Mewtwo"},     -- mewtwo[3361] = {"Suicune"},   -- suicunetime = 15} 

 

 

Eu só preciso fazer com que o summon verifique os alvos ao redor com frequência, sem afetar o Pokémon do player. Eu também precisaria saber a identificação dos clans, qual a base mais usada pelo pessoal?

 

 

 

Link para o comentário
Compartilhar em outros sites

43 minutos atrás, Nogard disse:

Bem, por enquanto está assim:

 

 

 

no caso seria o amuleto do entei, mas já estão todos funcionais: 

 

local shinycard = {[clan1] = {"Dragon", "Dragon lord", "Cyclops"},[clan2] = {"Rabbit", "orc"},time = 60,id =  3976}local amulets = {[1445] = {"Entei"},  -- entei[5591] = {"Mewtwo"},     -- mewtwo[3361] = {"Suicune"},   -- suicunetime = 15} 

 

 

Eu só preciso fazer com que o summon verifique os alvos ao redor com frequência, sem afetar o Pokémon do player. Eu também precisaria saber a identificação dos clans, qual a base mais usada pelo pessoal?

 

 

 

Á Mais usada atualmente é á DarkXPoke.

Link para o comentário
Compartilhar em outros sites

@Nogard a base mais usada é o DxP, e pelo que vi o "Entei" nao esta levando dano algum entao blz esta certo!

não sei se você sabe mas no caso da PXG é por stages entao:

um lvl 100 na outland mata 1 bixo e ganha 2600 EXP

um lvl 300 na outland mata 1 bixo e ganha 650 EXP ou 350 EXP nao me lembro mais

 

UM LVL 300 com SHINY CARD OU AMULET mata 1 bixo (Sem o player usar algum cd) e ganha 2600 EXP

alias o seu card nao entra no sistema de stages entao a exp é 100% 

mas se o player da algum hit ai a exp é baixada pois é dividida entre os 100% do card e o x% do player pelo stage

Link para o comentário
Compartilhar em outros sites

Então, o foda é que por padrão todos os monstros são tidos como "amigos", sendo assim o  doMonsterSetTarget() da pau, haha. To vendo aqui uma forma de fazer isso em lua.

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

Agora, Nogard disse:

Então, o foda é que por padrão todos os monstros são tidos como "amigos", sendo assim o  doMonsterSetTarget() da pau, haha. To vendo aqui uma forma de fazer isso.

 

não sei se ira ajudar em algo mas olha aki isso

 

se nao der entao tenta ver com o @nociam pois ele tinha configurado o sistema dele onde o card ficaba atingindo os outros bixos selvagems, apenas tinha problemas qndo usaba cd do seu pokemon principal

Link para o comentário
Compartilhar em outros sites

Nossa nem lembro mais disso fiz tudo por lua mas se o cara ali fazer por c++ melhor ne, gostei do mapa dele  bem parecido aonde eu faço teste no tfs 1.1

Link para o comentário
Compartilhar em outros sites

pra quem quiser brincar, alterar e/ou terminar o código, ta aí:

 

local shinycard = {[0] = {"Dragon", "Dragon lord", "Cyclops"},[1] = {"Rabbit, orc"},time = 60,id =  3976}local amulets = {[2484] = {"Entei"},     [5591] = {"Mewtwo"},     [3361] = {"Suicune"},    } h_storageClan, h_storageCD, h_storageCDValue, h_storageHelperTime = 181484, 181485, 24, 181486 function onUse(cid, item, fromPosition, itemEx, toPosition)local pos, a = getCreaturePosition(cid), 1   local pos_summon = {{x = pos.x + a, y = pos.y, z = pos.z},             {x = pos.x + a, y = pos.y + a, z = pos.z},             {x = pos.x, y = pos.y + a, z = pos.z},             {x = pos.x - a, y = pos.y + a, z = pos.z},              {x = pos.x - a, y = pos.y, z = pos.z},                {x = pos.x - a, y = pos.y - a, z = pos.z},               {x = pos.x, y = pos.y - a, z = pos.z},               {x = pos.x + a, y = pos.y - a, z = pos.z},              {x = pos.x +a, y = pos.y, z = pos.z}}              hname = ""                 if getPlayerStorageValue(cid, h_storageCD) >= os.time() then        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Resta ".. getPlayerStorageValue(cid, h_storageCD) - os.time() .." segundos de cooldown para utilizar esse item. ")        doSendMagicEffect(getThingPos(cid), CONST_ME_POFF)        doRemoveCreature(getCreatureSummons(cid)[table.maxn(getCreatureSummons(cid))])     return true                else                  if item.itemid == shinycard.id then               hname = shinycard[getPlayerStorageValue(cid, h_storageClan)][math.random(#shinycard[getPlayerStorageValue(cid, h_storageClan)])]          print (hname)          end                   if (amulets[item.itemid]) then           hname = amulets[item.itemid][1]            end    local helper = doCreateMonster(hname, pos_summon[math.random(9)])  local h_s = {}   doConvinceCreature(cid, helper) -- registerCreatureEvent(helper, "HelpingCard") setPlayerStorageValue(helper, h_storageHelperTime, os.time() + 20)              function Check(cid)         if cid == true or isCreature(cid) then       if getPlayerStorageValue(cid, h_storageHelperTime) <= os.time()  then       doRemoveCreature(cid)       print"criatura removida"        return true       end       else     print"thing not found"     return true     end    doSendAnimatedText(getThingPos(cid), getPlayerStorageValue(cid, h_storageHelperTime) - os.time() , 34)  addEvent(Check, 1000, cid)                    if getCreatureTarget(cid) == 0 then            local master = cid               local centerPos = {x = getCreaturePosition(master).x + 1, y = getCreaturePosition(master).y, z = getCreaturePosition(master).z}       local spec = getSpectators(centerPos, 8, 7, false)            local random = spec[math.random(#spec)]            s = random              if not isPlayer(s) and not isSummon(s) and not isNpc(s) then          helperEntei_1 (cid, s)          print("possivel target:" .. getCreatureName(s))                    local dest = getDirectionTo(getThingPos(cid), getThingPos(s))                    if isWalkable(getPosByDir(getThingPos(cid), dest))          then          local d = 1          while d < 2 do          addEvent(doMoveCreature, 500,cid, dest)          addEvent(doCreatureSetLookDir, 350, cid, getDirectionTo(getThingPos(cid), getThingPos(s)))          d = d + 1          end          doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(s)))          else          print('not walkable')          end          end   end                hname = ""  dest = ""                 end                                    --                 Check(helper)                              --  registerCreatureEvent(cid, "HelpingCard")                                setPlayerStorageValue(cid, h_storageCD, os.time() + 10)                                                                   end    return true   end                                                                            

 

 

helper_config = {["Entei"] = {minDamage = 5, maxDamage = 30, rangeAttack = 0},["Suicune"] = {min = 200, 500},["Raikou"] = {min = 200, max = 500}} function helperEntei_1 (cid, target) -- fire balllocal pos, a = getCreaturePosition(target), 1        pos_target = {{x = pos.x + a, y = pos.y, z = pos.z},             {x = pos.x + a, y = pos.y + a, z = pos.z},             {x = pos.x, y = pos.y + a, z = pos.z},             {x = pos.x - a, y = pos.y + a, z = pos.z},              {x = pos.x - a, y = pos.y, z = pos.z},                {x = pos.x - a, y = pos.y - a, z = pos.z},               {x = pos.x, y = pos.y - a, z = pos.z},               {x = pos.x + a, y = pos.y - a, z = pos.z},              {x = pos.x +a, y = pos.y, z = pos.z}}                          for i = 1, #pos_target do                            doAreaCombatHealth(cid, COMBAT_FIREDAMAGE, pos_target[i], 1, - helper_config["Entei"].minDamage, - helper_config["Entei"].maxDamage, 6)      end return true end   

 

 

 

não sei se vou terminar, to perdendo a fé nesses fóruns.

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

entendo @Nogard, teu trabalho superou por mt qualquer outro no forum, faz mt tempo q pararam de se ajudar aki, ai as veces chega alguem com algo de conhecemento em scripting-programming e fica ajudando um pouco tentando reviver o forum mas nao da certo x.x, mt obg pela iniciative q vc tive de me ajudar, abraços

 

 

@nociam se vc tiver como ajudar ele nesse trabalho ia ajudar mt pois acredito q vc ainda avançou mais um pouco q ele, entao talvez se ele souber oq você fez iria ficar + facil pra ele finalizar...

Link para o comentário
Compartilhar em outros sites

44 minutos atrás, Nogard disse:

pra quem quiser brincar, alterar e/ou terminar o código, ta aí:

 

local shinycard = {[0] = {"Dragon", "Dragon lord", "Cyclops"},[1] = {"Rabbit, orc"},time = 60,id =  3976}local amulets = {[2484] = {"Entei"},     [5591] = {"Mewtwo"},     [3361] = {"Suicune"},    } h_storageClan, h_storageCD, h_storageCDValue, h_storageHelperTime = 181484, 181485, 24, 181486 function onUse(cid, item, fromPosition, itemEx, toPosition)local pos, a = getCreaturePosition(cid), 1   local pos_summon = {{x = pos.x + a, y = pos.y, z = pos.z},             {x = pos.x + a, y = pos.y + a, z = pos.z},             {x = pos.x, y = pos.y + a, z = pos.z},             {x = pos.x - a, y = pos.y + a, z = pos.z},              {x = pos.x - a, y = pos.y, z = pos.z},                {x = pos.x - a, y = pos.y - a, z = pos.z},               {x = pos.x, y = pos.y - a, z = pos.z},               {x = pos.x + a, y = pos.y - a, z = pos.z},              {x = pos.x +a, y = pos.y, z = pos.z}}              hname = ""                 if getPlayerStorageValue(cid, h_storageCD) >= os.time() then        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Resta ".. getPlayerStorageValue(cid, h_storageCD) - os.time() .." segundos de cooldown para utilizar esse item. ")        doSendMagicEffect(getThingPos(cid), CONST_ME_POFF)        doRemoveCreature(getCreatureSummons(cid)[table.maxn(getCreatureSummons(cid))])     return true                else                  if item.itemid == shinycard.id then               hname = shinycard[getPlayerStorageValue(cid, h_storageClan)][math.random(#shinycard[getPlayerStorageValue(cid, h_storageClan)])]          print (hname)          end                   if (amulets[item.itemid]) then           hname = amulets[item.itemid][1]            end    local helper = doCreateMonster(hname, pos_summon[math.random(9)])  local h_s = {}   doConvinceCreature(cid, helper) -- registerCreatureEvent(helper, "HelpingCard") setPlayerStorageValue(helper, h_storageHelperTime, os.time() + 20)              function Check(cid)         if cid == true or isCreature(cid) then       if getPlayerStorageValue(cid, h_storageHelperTime) <= os.time()  then       doRemoveCreature(cid)       print"criatura removida"        return true       end       else     print"thing not found"     return true     end    doSendAnimatedText(getThingPos(cid), getPlayerStorageValue(cid, h_storageHelperTime) - os.time() , 34)  addEvent(Check, 1000, cid)                    if getCreatureTarget(cid) == 0 then            local master = cid               local centerPos = {x = getCreaturePosition(master).x + 1, y = getCreaturePosition(master).y, z = getCreaturePosition(master).z}       local spec = getSpectators(centerPos, 8, 7, false)            local random = spec[math.random(#spec)]            s = random              if not isPlayer(s) and not isSummon(s) and not isNpc(s) then          helperEntei_1 (cid, s)          print("possivel target:" .. getCreatureName(s))                    local dest = getDirectionTo(getThingPos(cid), getThingPos(s))                    if isWalkable(getPosByDir(getThingPos(cid), dest))          then          local d = 1          while d < 2 do          addEvent(doMoveCreature, 500,cid, dest)          addEvent(doCreatureSetLookDir, 350, cid, getDirectionTo(getThingPos(cid), getThingPos(s)))          d = d + 1          end          doCreatureSetLookDir(cid, getDirectionTo(getThingPos(cid), getThingPos(s)))          else          print('not walkable')          end          end   end                hname = ""  dest = ""                 end                                    --                 Check(helper)                              --  registerCreatureEvent(cid, "HelpingCard")                                setPlayerStorageValue(cid, h_storageCD, os.time() + 10)                                                                   end    return true   end                                                                            

 

 

helper_config = {["Entei"] = {minDamage = 5, maxDamage = 30, rangeAttack = 0},["Suicune"] = {min = 200, 500},["Raikou"] = {min = 200, max = 500}} function helperEntei_1 (cid, target) -- fire balllocal pos, a = getCreaturePosition(target), 1        pos_target = {{x = pos.x + a, y = pos.y, z = pos.z},             {x = pos.x + a, y = pos.y + a, z = pos.z},             {x = pos.x, y = pos.y + a, z = pos.z},             {x = pos.x - a, y = pos.y + a, z = pos.z},              {x = pos.x - a, y = pos.y, z = pos.z},                {x = pos.x - a, y = pos.y - a, z = pos.z},               {x = pos.x, y = pos.y - a, z = pos.z},               {x = pos.x + a, y = pos.y - a, z = pos.z},              {x = pos.x +a, y = pos.y, z = pos.z}}                          for i = 1, #pos_target do                            doAreaCombatHealth(cid, COMBAT_FIREDAMAGE, pos_target[i], 1, - helper_config["Entei"].minDamage, - helper_config["Entei"].maxDamage, 6)      end return true end   

 

 

 

não sei se vou terminar, to perdendo a fé nesses fóruns.

REP+ pra ajudar a manter sua fé no fórum.

Link para o comentário
Compartilhar em outros sites

58 minutos atrás, Josegvb disse:

entendo @Nogard, teu trabalho superou por mt qualquer outro no forum, faz mt tempo q pararam de se ajudar aki, ai as veces chega alguem com algo de conhecemento em scripting-programming e fica ajudando um pouco tentando reviver o forum mas nao da certo x.x, mt obg pela iniciative q vc tive de me ajudar, abraços

 

 

@nociam se vc tiver como ajudar ele nesse trabalho ia ajudar mt pois acredito q vc ainda avançou mais um pouco q ele, entao talvez se ele souber oq você fez iria ficar + facil pra ele finalizar...

 

então mano, se ninguém se dispor a finalizar eu o faço, só não sei quando

 

55 minutos atrás, DarkWore disse:

REP+ pra ajudar a manter sua fé no fórum.

 

kkkk boa

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...