Ir para conteúdo
  • Cadastre-se

Danves

Membro
  • Total de itens

    364
  • Registro em

  • Última visita

Tudo que Danves postou

  1. local postarg = getThingPos(target) local free = getClosestFreeTile(cid, postarg) if not isWalkable(free) and not getTileInfo(postarg).protection then doTeleportThing(cid, postarg, false) elseif not getTileInfo(free).protection then doTeleportThing(cid, free, false) end Frequencias dos tps: addEvent(teleport, 2, cid, target) addEvent(teleport, 450, cid, target) addEvent(teleport, 900, cid, target) addEvent(teleport2, 1200, cid, pos) -- esse volta pra pos que castou addEvent(movfin, 1202, cid) -- esse altera pra poder mover o char de volta addEvent(mudarsto, 1203, cid) -- esse al
  2. Bom, como definido na maioria dos config.lua possui allowedMaxSizePackets = 20 Eu tenho um problema com uma spell que ocorre varios eventos, e geralmente qualquer travada pequena na net no momento dela causa um dbug com explicação: Network.cpp 954: assertion failed (BufferSize = 0) (NextToWrite = 24590), reason: BufferSize>0Se aumentasse o allowedMaxSizePackets iria reduzir a frequência desses dbugs? O que ele influencia em um servidor? Eu entendo que significa mais ou menos quantos pacotes a pessoa pode enviar em algum período de tempo, mas queria saber se iria ajudar a evitar dbu
  3. Seguinte, eu tenho uma spell que o atacante fica teleportando ao redor do cara e tirando dmg, mas o problema é que em alguns pcs eles tomam dbug. Aparece Network.cpp 954: assertion failed (BufferSize = 0) (NextToWrite = 24590), reason: BufferSize>0 E o interessante é que onde mais ocorre é em um mapa de gelo que temos, não sei porque. Quantidade/tempo dos teleports: 0, 300, 600, 900, 1200 OBS: Client normal da cipsoft
  4. No meu ondeath eu verifico só até o deathList[4], todos que tiverem retirado pelo menos 30% recebem storage. E claro, se estiver em um certo range, pra não receber se sair distribuindo 30% em cada um.. Vendo que o deathlist é numero pela ordem de dano tirado(sem ser o o [1], que é ultimo hit).
  5. Porque todos que fazem tasks criam por Onkill? Quando fui criar uma task eu criei via onDeath e funcionou perfeitamente Só precisei criar um script de statschange pra saber se realmente o lasthit deu pelo menos 30% de dano total do hp do monstro, mas de boa Usei notepad++ pra acrescentar em todos os arquivos de monstro a linha do evento de death Não curto onkill porque aí você até dando 1 de dano já entra.
  6. function onTarget(cid, target) if isSummon(target) and isPlayer(cid) and getCreatureMaster(target) == cid then return false end return true end function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS and isSummon(cid) and isPlayer(attacker) and getCreatureMaster(cid) == attacker then return false end return true end Acredito que não precisa do Oncast, vendo que você não poderá targetar ele e nem tirar dano com AOE por causa do statschange.
  7. Qual o erro das que não funcionaram?
  8. Funcionou? Se funcionar marca a resposta do script como melhor, pra fechar o tópico
  9. Cara deixa essa spell assim que iria acertar todas as outras, eu pus uma function global nela, todas as outras spells lerão essa function.
  10. Pelo que percebi essa função só pega o lado que a pessoa esta olhando.. Podia ser simplesmente substituído, mas já que usa em vários lugares, colocarei a função na spell Deixa a spell assim: function getPatrzJacolos(cid) return getCreatureLookDirection(cid) end local combat1 = createCombatObject() setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE) setCombatParam(combat1, COMBAT_PARAM_EFFECT, 87) setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -5.0, 0, -5.1, 0) local arr1 = { {0, 0, 0, 0, 0}, {0, 0, 0, 0, 0}, {1, 0, 0, 0, 0}, {1, 2, 0, 0, 0}, {1, 0, 0, 0, 0}, {0, 0, 0, 0
  11. Esse aqui iria só anular os danos(seja de ataque normal ou de magias) entre pessoas da mesma party. function onStatsChange(cid, attacker, type, combat, value) if type == STATSCHANGE_HEALTHLOSS then if isPlayer(cid) and isPlayer(attacker) and isInParty(cid) and isInParty(attacker) and getPlayerParty(cid) == getPlayerParty(attacker) then return false end end return true end Até onde sei não tem como identificar se o dano que está a acontecer é proveniente de uma spell ou ataque básico. Teria que fazer uns arranjos de storage em Oncast, mas que não seria 100% funcional.
  12. Me mostra como ela está no seu spells.xml Mas de qualquer forma tente assim -- SpellCreator generated. -- =============== COMBAT VARS =============== -- Areas/Combat for 0ms local combat0_Brush = createCombatObject() setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE) setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_HEALING) setCombatArea(combat0_Brush,createCombatArea({{2}})) function getDmg_Brush(cid, level, maglevel) return (2000),(3000) end setCombatCallback(combat0_Brush, CALLBACK_PARAM_LEVELMAGICVALUE, "getDmg_Brush") local con___combat0_Brush = c
  13. Seu ot não tem a função "getPatrzJacolos". Poste a spell aqui e eu vejo o que posso por no lugar dessa função para ela funcionar como deveria.
  14. Bom, se ele quiser que o summon nasça na pos do player ta aí o meu.
  15. É só pra tirar o erro do console? PS: Não achei o "playerpos" então criei outro function onCastSpell(cid, var) local playerpos = getThingPos(cid) local MaximoSummon = 3 local summons = getCreatureSummons(cid) if(table.maxn(summons) < MaximoSummon) then -- no summons local clone = doCreateMonster("demon", playerpos) if isCreature(clone) then doConvinceCreature(cid, clone) else return doPlayerSendCancel(cid, "Não há espaço para criar o summon.") end return TRUE end end
  16. local tempo = 5 -- tempo do paralyze em segundos local effect = 221 -- efeito que vai sair ao redor do player local exausted = 8 -- exhausted em segundos local storage = 13098 -- storage do exausted local condition = createConditionObject(CONDITION_PARALYZE) setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000) setConditionParam(condition, CONDITION_PARAM_SPEED, -5000) function onCastSpell(cid, var) local target = getCreatureTarget(cid) local function Efect() if not isCreature(target) then return true end local positions = { [1] = {x=getCreaturePosition(target).x+1, y=getCreatureP
  17. Dá pra saber se tem algum bloqueio de passagem entre 2 posições com alguma dessas funções? " if creatureGoToPos(uid, position, delay) == TRUE then" Isso voltaria a informação se tem bloqueio entre as 2? Queria usar isso pra saber se entre 2 creatures não tem bloqueio pra eu jogar uma spell que usa distanceshoot, por exemplo. Exemplo: Usaria pra bloquear a doBlast caso tivesse uma mw entre as 2 creatures. Bom, caso não, aí vai minha sugestão de função.
  18. Deu certo com spells de áreas iguais, mas em spells digamos em linha reta, ele muda o resto do percurso da linha reta pra outra direção quando eu me movo..(mas se baseando na pos marcada ao usar a spell) Do jeito que pedi acho que só causando dano em X pos. Queria que tivesse alguma função pra causar dano em x pos, mas pelo visto só usando função pra pegar criatura do topo e usar addhealth ou targetcombathealth, o que infelizmente não iria aparecer o magiceffect nas outras pós(se colocasse pra aparecer sem combat iria pegar pos com paredes ou posições que deveriam ter sido bloqueada pela pare
  19. Sim, pois as spells por tempo em área acompanham mesmo sem direcional ou self, a área é sempre baseada na pos atual do usuario, não da ´pra ficar usando área/docombat..
  20. Exemplo: Se eu quero uma magia que dá uma onda de fogo na minha frente, mas que ela não altere a sequencia caso eu me mexa, não existe nada como "dê dano em X área baseado na área inicial que o cara tava quando soltou a spell" ? Up, preciso fazer uma spell dar dano em áreas por segundo mas sem que ao me mover mude o trajeto da mesma zz
  21. Queria saber uma função para causar dano a uma determinada pos, independente do lugar onde a criatura causadora está, ou se possível, um dano sem criatura causadora. Queria colocar, no statschange pra acontecer um dano em tal Pos, pode ser causado pelo Cid mesmo. Não entendi muito bem a função doAreaCombatHealth pois ela tambem além de pos pede uma area, creio que seria algo como {1} então? Pois recentemente tentei criar uma spell que causava dano em tais pos, em cada tempo, mas a pos mudava de acordo com a pos nova que eu andava, mesmo determinando uma pos via x y z, mas enfim não vem ao c
  22. É um Beerus em topdown(tipo dbo, esses troço)
  23. Na verdade você disse pra ele colocar <event type="death" name="reset_all" event="script" value="reset"/> <event type="login" name="reset_all_" event="script" value="reset"/> O que deveria ser <event type="death" name="reset_all" event="script" value="reset.lua"/> <event type="login" name="reset_all_" event="script" value="reset.lua"/>
  24. Tive a leve impressão de que o luan está procurando a abórbora
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo