SA-MP Forums Archive
Duda, Array - 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: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Duda, Array (/showthread.php?tid=544056)



Duda, Array - xTexTx - 30.10.2014

Buenas, quisiera que me explicaran un poco, ya que iba bien hasta que me decidн hacer algъn invento con Array's, para almacenar ID, y pues se me ha complicado xDD
їEsto estб bien echo?
pawn Код:
new objeto = {0, 1, ...};
Ya que si no mal recuerdo, los '...' servia para auto-completar toma el valor de distancia de 0 a 1, que serнa uno, y sigue auto-completando sucesivamente, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, mi duda es, їsolo llega hasta 10?, o sigue aun mбs?
Ya que si se me da por crear mбs de 10 objetos, no sй como harнa xD, desde ya muchas gracias.


EDIT: Ahora que recuerdo creo que tenнa que haber puesto: new objeto[50] = {0, 1, ...};
para asн se auto-completa hasta el 50 xDD.


Respuesta: Duda, Array - jotajeda - 30.10.2014

new objeto[50];

objeto[0] = 1;
objeto[1] = 1;
objeto[2] = 1;
etc
etc
etc.


Respuesta: Duda, Array - xTexTx - 30.10.2014

Creo que no me explique, eso ya lo se hacer, yo lo que quiero hacer, es utilizar un comando he ir utilizando el 1, el 2, el 3, el 4, cada vez que utilizo el comando utilizar un nъmero distinto que este disponible.


Respuesta: Duda, Array - jotajeda - 30.10.2014

New Mi_Variable;

pawn Код:
zcmd(micomando, playerid, params[])
{
    if(IsPlayerConnected(playerid))
   {
      if(Mi_Variable == 0){Mi_Variable = 1;/*o mбs funciones*/}
      if(Mi_Variable == 1){Mi_Variable = 2;/*o mбs funciones*/}
      if(Mi_Variable == 2){Mi_Variable = 3;/*o mбs funciones*/}
      return 1;
    }
}
//______________________________________________//
//o
zcmd(micomando, playerid, params[])
{
    if(IsPlayerConnected(playerid))
   {
       if(Mi_Variable == 0){Mi_Variable ++;/*o mas funciones*/}
       if(Mi_Variable == 1){Mi_Variable ++;/*''*/}
       if(Mi_Variable == 2){Mi_Variable ++;/*''*/}
       if(Mi_Variable == 3){Mi_Variable ++;/*''*/}
    }
return 1;
}
//Puedes jugar de muchas maneras y/o formas.
//Mas informaciуn https://sampwiki.blast.hk/wiki/Scripting_Basics



Respuesta: Duda, Array - [J]ulian - 30.10.2014

Para saber si estб usado o no comprueba si es diferente a 0 el valor. O, ponle un valor que sepas que no usarбs y comprueba que serб diferente a ese (-1, por ejemplo).


Respuesta: Duda, Array - xTexTx - 30.10.2014

A lo que yo me refiero es, que de ese 'new objeto[50] = {0, 1, ...};'
Es que al crear un objeto, utilice un nъmero disponible de esos 50, asн para que cuando yo quiera seleccionar ese objeto, ponga, /seleccionar (Nъmero del objeto)


Respuesta: Duda, Array - aoEXE - 30.10.2014

Quote:
Originally Posted by xTexTx
Посмотреть сообщение
Buenas, quisiera que me explicaran un poco, ya que iba bien hasta que me decidн hacer algъn invento con Array's, para almacenar ID, y pues se me ha complicado xDD
їEsto estб bien echo?
pawn Код:
new objeto = {0, 1, ...};
Ya que si no mal recuerdo, los '...' servia para auto-completar toma el valor de distancia de 0 a 1, que serнa uno, y sigue auto-completando sucesivamente, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, mi duda es, їsolo llega hasta 10?, o sigue aun mбs?
Ya que si se me da por crear mбs de 10 objetos, no sй como harнa xD, desde ya muchas gracias.


EDIT: Ahora que recuerdo creo que tenнa que haber puesto: new objeto[50] = {0, 1, ...};
para asн se auto-completa hasta el 50 xDD.
sн, lo va a hacer hasta completarlo! osea hasta el tamaсo de tu array.


Respuesta: Duda, Array - [J]ulian - 31.10.2014

Quote:
Originally Posted by xTexTx
Посмотреть сообщение
A lo que yo me refiero es, que de ese 'new objeto[50] = {0, 1, ...};'
Es que al crear un objeto, utilice un nъmero disponible de esos 50, asн para que cuando yo quiera seleccionar ese objeto, ponga, /seleccionar (Nъmero del objeto)
A que te referis con "un numero disponible de esos 50". Todos estбn disponibles hasta que crees el objeto. En tu caso para saber si esta ocupado tenes que usar la funcion IsValidObject.


Respuesta: Duda, Array - xTexTx - 31.10.2014

Claro, yo lo que quiero hacer, es que al crear un objeto, utilice el 0, luego creo otro y que utilice el 1, y asн sucesivamente, їme puedes explicar como hacerlo?


Respuesta: Duda, Array - [J]ulian - 31.10.2014

Eso se hace automбtico. CreateObject retorna el ID del objeto creado. Entonces

Si haces

object[0] = Create, object[0] sera el ID de objeto (0 si es el primero).
object[1] = Create, object[0] sera el ID de objeto (1 si es el segundo).

Pero si previo a eso pones ob = Create, ob serб 0, object[0] serб 1 y object[1] serб 2.

PD: No se si los objetos empiezan de 0 o 1, creo que 0.