Postado Abril 17, 2013 12 anos Olá gostaria de saber como eu descubro que eu estou a sei la 2 sqm de um player ou 5 sqm de um monstro!!! acredito eu que seja pela battle list também... Porém minha battle list não tem nenhum atributo de distância ou algo similar... Vou postar os atributos Na hora em que vou fazer a leitura leio como qual quer... Gostaria de saber alguma forma ou qual atributo a distância do player tem para eu poder declarar e poder ler como no exemplo abaixo Teria um sei la DistancePlayer = X Valor; que me devolve-se se o char lido estiver a 1,2,3,4,5,6,7... sqms do meu personagem? DistanceId = 0; DistanceType = 3; DistanceName = 4; DistanceX = 44; DistanceY = 40; DistanceZ = 36; DistanceIsWalking = 80; DistanceDirection = 84; DistanceOutfit = 96; DistanceAddon = 116; DistanceMountId = 120; DistanceIsVisible = 172; DistanceSkull = 152; DistanceColorHead = 100; DistanceColorBody = 104; DistanceColorLegs = 108; DistanceColorFeet = 112; DistanceWarIcon = 168; DistanceWalkSpeed = 144; DistanceHPBar = 140; DistanceParty = 152; Aqui é como eu leio por exemplo o nome... BattleList[i].Name := ReadString(Start + (i * StepCreatures)+ DistanceName); Obrigado!!! :B
Postado Abril 17, 2013 12 anos Simples assim, use a battle list para achar a suas coordenadas x, y e z e use para achar as do monstro, subtraia uma pela outra e achará a distancia. http://balfprogramador.blogspot.comhttp://mynameisbalf.blogspot.com
Postado Abril 17, 2013 12 anos Autor Sério que é só isso? pqp ahsuahsuahs Vou testar aqui jaja dou uma resposta :B
Postado Abril 17, 2013 12 anos Autor Realmente Somar minha pos e diminuir do bicho da certo... (x+y)-(x+y) o unico problema é que em diagonal no qual seria 3 blocos de distancia ele me devolve 7 por que ele não considera apenas os diagonais... ele considera como se fosse andar normal clicando... isso que fica hardcore!
Postado Abril 17, 2013 12 anos if Creatures[x].X > Player.X then mx := Creatures[x].X - Player.X else mx := Player.X - Creatures[x].X; if Creatures[x].Y > Player.Y then my := Creatures[x].Y - Player.Y else my := Player.Y-Creatures[x].Y; md := my+mx;
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.