[Include] IsPath (MapAndreasXY project)
#1

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


Reply
#2

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

Nice
Reply
#4

Show
Reply
#5

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

2rep ^^
Reply
#6

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

Parabйns -q
Reply
#7

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 ?
Reply
#8

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

parabйns cara muito bom.


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

Que foda. kk

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


Forum Jump:


Users browsing this thread: 2 Guest(s)