SA-MP Forums Archive
[Include] IsPath (MapAndreasXY project) - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+----- Forum: Lançamentos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=56)
+----- Thread: [Include] IsPath (MapAndreasXY project) (/showthread.php?tid=472920)



IsPath (MapAndreasXY project) - ipsBruno - 31.10.2013

Estou planejando fazer uma include similar a Map Andreas, sу que esta servirб para pegar dados de locais XY referentes aos dados de caminhada do GTA SA.



Isto porque quero implementar no sistema INPC futuramente, e precisarei de uma include que faзa isto:





Por enquanto este projeto tem apenas a funзгo IsPath, que apesar de parecer simples foi um pouco complicada para fazer.


Basicamente estб funзгo checa se uma determinada coordenada estб nos perimetros de caminhada dos cidadхes do GTA Offline, e pode ser usada para criar NPCS inteligentes que caminham de forma complexa sobre o ambiente do GTA SA





Cуdigo da incude:


pawn Код:
#include "iImage.inc"

stock Float: PixelsCoords(x) {
    if(x < 300) return float(-x-300) * 10.0;
    if(x >= 300) return float(x-300)  * 10.0;
    return 0.0;
}

stock CoordsPixels(Float: x) {

    return floatround((x+3000) / 10.0);
}


stock
        headerMapa [bitmapType]
;

stock
        File: mapAndreasXY
;

#define IsPath(%0,%1) \
                    ~ GetPixelColor(mapAndreasXY,CoordsPixels(%0),CoordsPixels(%1),headerMapa)

#define MapAndreasXY_Init() \
                     mapAndreasXY = OpenImage(#mapa.bmp, headerMapa)

#define MapAndreasXY_Exit() \
                    CloseImage(mapAndreasXY)

Й necessбrio ter a include iImage.inc na sua pasta de includes e COLOCAR a imagem "mapa.bmp" na pasta script files

Й um projeto bem avanзado, eu levei uma manhг toda para deixar bastante preciso a leitura do map andreas, combinado com a leitura da imagem. Sem contar que tive que corrigir alguns erros em iImage para deixar mais preciso o projeto



Exemplo:


pawn Код:
main(){


     
    MapAndreasXY_Init(); // inicilar
   
    printf("%d", IsPath(0.0, 100.0)); // checar se 0.0 100.0 й um local adequado para Path
   


}

public OnGameModeExit() {
        MapAndreasXY_Exit(); // fechar MapAndreas
}


Autoria:


Projeto criado por Bruno da Silva. @ ipsbr.net iPsTeaM!

Agradeзo a Steve M por ter disponibilizado a imagem de paths





Re: IsPath (MapAndreasXY project) - WLSF - 31.10.2013

great job , jб notei como tu pretende manipular os npc direitinho, hehe.


Re: IsPath (MapAndreasXY project) - XxFaTaLxX - 31.10.2013

Nice


Re: IsPath (MapAndreasXY project) - iDreak - 31.10.2013

Show


Re: IsPath (MapAndreasXY project) - Juniiro3 - 31.10.2013

Bem bacana, jб estou bolando algumas coisas pra fazer com ela...

2rep ^^


Re: IsPath (MapAndreasXY project) - BielCOP - 31.10.2013

Como sempre, vocк fazendo com que nуs nos impressionemos com vocк.

Parabйns -q


Re: IsPath (MapAndreasXY project) - Falcon. - 31.10.2013

Entгo usa-se o iImage para ler o .bmp, e com os cбlculos dos pнxels vocк obtem as posiзхes vбlidas ?


Re: IsPath (MapAndreasXY project) - N3XTMapper - 31.10.2013

Na moral , porque o iPsBruno ainda nao й developer ou beta tester? o cara manja de mais


Re: IsPath (MapAndreasXY project) - PT - 31.10.2013

parabйns cara muito bom.


essa imagem me lembra uma carta cartogrбfica militar :P


Re: IsPath (MapAndreasXY project) - Coe1 - 31.10.2013

Que foda. kk

Parabйns Bruno. Como sempre, trazendo coisas novas. ^^'