duda,areas,cosas,etc...
#8

La siesta fue un poco larga...

Para hacer lo que necesitas, necesitaremos, como dice Parka, un par de operaciones matemбticas bбsicas...

Imagina que tenemos una GangZone en el mapa, esta GangZone tiene de coordenadas:
  • MinX: 100.0
  • MinY: 400.0
  • MaxX: 200.0
  • MaxY: 500.0
Como hariamos para obtener las coordenadas Random X e Y? primero hagamos la X...

Primero, necesitamos saber la diferencia de posiciones, esto lo haremos restando MinX al MaxX, osea:
  • MaxX - MinX
  • 200.0 - 100.0
Esto es 100.0, entonces la diferencia es de 100.0... ahora, ya que tenemos la direrencia, como obtenemos una posiciуn random de acuerdo a las posiciones X? hacemos un random del resultado de la operaciуn anterior, y el resultado de este, se lo sumamos a MinX... de esta forma, obtendremos una posiciуn random entre MaxX y MinX.

Para la posiciуn random Y, es lo mismo.



pawn Код:
/*
    Descripciуn
        Obtener una posiciуn 2D random entre un area 2D
   
    Parбmetros
        Float:pos[2]
            array -> 0
                Variable donde se guardarб la posiciуn random X
            array -> 1
                Variable donde se guardarб la posiciуn random Y
        Float:xy[4]
            array -> 0
                MinX del area
            array -> 1
                MinY del area
            array -> 2
                MaxX del area
            array -> 3
                MaxY del area
               
    Retorno
        Siempre 1.
*/

stock randomPos2D(Float:pos[2], Float:xy[4])
{
    for(new i = 0; i < ((sizeof(xy))/(2)); i++) pos[i] = (random(floatround((Float:xy[i+2]-Float:xy[i])+Float:xy[i])));

    return 1;
}
Y una pequeсa prueba:

pawn Код:
new Float:fin[2];
randomPos2D(fin, Float:{100.0, 400.0, 200.0, 500.0});
printf("FinX: %f\nFinY: %f", fin[0], fin[1]);
Reply


Messages In This Thread
duda,areas,cosas,etc... - by OTACON - 01.05.2014, 02:11
Respuesta: duda,areas,cosas,etc... - by Parka - 01.05.2014, 05:34
Respuesta: duda,areas,cosas,etc... - by xDarkuzSx - 01.05.2014, 14:10
Respuesta: duda,areas,cosas,etc... - by OTACON - 01.05.2014, 21:55
Respuesta: duda,areas,cosas,etc... - by OTACON - 03.05.2014, 05:10
Respuesta: duda,areas,cosas,etc... - by MugiwaraNoLuffy - 03.05.2014, 07:44
Respuesta: duda,areas,cosas,etc... - by OTACON - 03.05.2014, 11:44
Respuesta: duda,areas,cosas,etc... - by DesingMyCry - 05.05.2014, 00:57
Respuesta: duda,areas,cosas,etc... - by MugiwaraNoLuffy - 05.05.2014, 02:35
Respuesta: duda,areas,cosas,etc... - by OTACON - 05.05.2014, 02:40

Forum Jump:


Users browsing this thread: 3 Guest(s)