SA-MP Forums Archive
Elejir lugar de aparecer - 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: Elejir lugar de aparecer (/showthread.php?tid=177993)



Elejir lugar de aparecer - pegazo15 - 20.09.2010

Como hago para escojer el lugar en donde aparezeran los jugadores es chimbo que aparezcan todos en el mismo sitio


Respuesta: Elejir lugar de aparecer - TheChaoz - 20.09.2010

aca tenes un codigo base.
pawn Код:
public OnPlayerSpawn(playerid)
{
    new rspawn = random(4);
    switch(rspawn){
        case 0: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 1: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 2: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 3: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
    }
    return 1;
}
solo debes cambiar las coordenadas de los SetPlayerSpawn. son 4 lugares diferentes. si quieres que sean 5, sera "random(5)", y tendras tambien un "case 4:" y asi sucesivamente.
cualquier duda preguntame


Respuesta: Elejir lugar de aparecer - pegazo15 - 20.09.2010

Quote:
Originally Posted by the_chaoz
Посмотреть сообщение
aca tenes un codigo base.
pawn Код:
public OnPlayerSpawn(playerid)
{
    new rspawn = random(4);
    switch(rspawn){
        case 0: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 1: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 2: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
        case 3: SetPlayerPos(playerid, 0.0, 0.0, 0.0);
    }
    return 1;
}
solo debes cambiar las coordenadas de los SetPlayerSpawn. son 4 lugares diferentes. si quieres que sean 5, sera "random(5)", y tendras tambien un "case 4:" y asi sucesivamente.
cualquier duda preguntame
me salen estos errores
C:\Users\Roberto\samp\Destruccion total\gamemodes\lvdm.pwn(62 : error 002: only a single statement (or expression) can follow each "case"
C:\Users\Roberto\samp\Destruccion total\gamemodes\lvdm.pwn(62 : warning 215: expression has no effect
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


1 Error.


Respuesta: Elejir lugar de aparecer - TheChaoz - 20.09.2010

fijate asi:
pawn Код:
public OnPlayerSpawn(playerid)
{
    new rspawn = random(4);
    switch(rspawn){
        case 0:{SetPlayerPos(playerid, 0.0, 0.0, 0.0);}
        case 1:{SetPlayerPos(playerid, 0.0, 0.0, 0.0);}
        case 2:{SetPlayerPos(playerid, 0.0, 0.0, 0.0);}
        case 3:{SetPlayerPos(playerid, 0.0, 0.0, 0.0);}
    }
    return 1;
}
aun que de la forma anterior deberia funcionar


Respuesta: Elejir lugar de aparecer - pagaromx96 - 23.09.2010

Arriba de todo

pawn Код:
new Spawn[MAX_PLAYERS];
pawn Код:
new Float:gRandomPlayerSpawns[23][3] = {
{1958.3783,1343.1572,15.3746},
{2199.6531,1393.3678,10.8203},
{2483.5977,1222.0825,10.8203},
{2637.2712,1129.2743,11.1797},
{2000.0106,1521.1111,17.0625},
{2024.8190,1917.9425,12.3386},
{2261.9048,2035.9547,10.8203},
{2262.0986,2398.6572,10.8203},
{2244.2566,2523.7280,10.8203},
{2335.3228,2786.4478,10.8203},
{2150.0186,2734.2297,11.1763},
{2158.0811,2797.5488,10.8203},
{1969.8301,2722.8564,10.8203},
{1652.0555,2709.4072,10.8265},
{1564.0052,2756.9463,10.8203},
{1271.5452,2554.0227,10.8203},
{1441.5894,2567.9099,10.8203},
{1480.6473,2213.5718,11.0234},
{1400.5906,2225.6960,11.0234},
{1598.8419,2221.5676,11.0625},
{1318.7759,1251.3580,10.8203},
{1558.0731,1007.8292,10.8125},
{1705.2347,1025.6808,10.8203}
};

new Float:gCopPlayerSpawns[2][3] = {
{2297.1064,2452.0115,10.8203},
{2297.0452,2468.6743,10.8203}
};
En

pawn Код:
public OnPlayerSpawn(playerid)
{
SetPlayerRandomSpawn(playerid);
return 1;
}
En

pawn Код:
public SetPlayerRandomSpawn(playerid)
{
if (Spawn[playerid] == 1)
{
new rand = random(sizeof(gCopPlayerSpawns));
SetPlayerPos(playerid,
gCopPlayerSpawns[rand][0],
gCopPlayerSpawns[rand][1],
gCopPlayerSpawns[rand][2]);
SetPlayerFacingAngle(playerid, 270.0);
}
else if (Spawn[playerid] == 0)
{
new rand = random(sizeof(gRandomPlayerSpawns));
SetPlayerPos(playerid,
gRandomPlayerSpawns[rand][0],
gRandomPlayerSpawns[rand][1],
gRandomPlayerSpawns[rand][2]);
}
return 1;
}



Re: Respuesta: Elejir lugar de aparecer - CristianTdj - 23.09.2010

La mayorнa de funciones que pusiste no tienen sentido, no explicas ni das informaciуn, ademбs de que pones las que tъ tienes, cosa que no deberнas hacer. Ademбs, el ъltimo callback no lo tendrб.


Respuesta: Re: Respuesta: Elejir lugar de aparecer - pagaromx96 - 23.09.2010

Quote:
Originally Posted by CristianTdj
Посмотреть сообщение
La mayorнa de funciones que pusiste no tienen sentido, no explicas ni das informaciуn, ademбs de que pones las que tъ tienes, cosa que no deberнas hacer. Ademбs, el ъltimo callback no lo tendrб.
El dira si le sirve o si no le sirve


Re: Respuesta: Elejir lugar de aparecer - cocolabush - 24.09.2010

Quote:
Originally Posted by CristianTdj
Посмотреть сообщение
La mayorнa de funciones que pusiste no tienen sentido, no explicas ni das informaciуn, ademбs de que pones las que tъ tienes, cosa que no deberнas hacer. Ademбs, el ъltimo callback no lo tendrб.
Es verdad, .. no tiene el forward, ni define en ningun momento el Spawn[playerid],

Por ahi lo puede usar como otra base, pero esta mal escrito...


Respuesta: Elejir lugar de aparecer - TheChaoz - 24.09.2010

lo que en realidad le falta a ese codigo es el
pawn Код:
forward SetPlayerRandomSpawn(playerid);
si bien el codigo complica demasiado, ya que la funcion es en si innecesaria, hay cosas mayores que esos detalles.
ej: cuando cambia de valor el array Spawn[n]
xq en diferentes lineas la misma funcion? me refiero a SetPlayerPos(playerid, (salto de linea) codigo, (salto de linea) codigo, (salto de linea) codigo,);? eso da errores.


Respuesta: Elejir lugar de aparecer - pagaromx96 - 24.09.2010

Quote:
Originally Posted by the_chaoz
Посмотреть сообщение
lo que en realidad le falta a ese codigo es el
pawn Код:
forward public SetPlayerRandomSpawn(playerid);
si bien el codigo complica demasiado, ya que la funcion es en si innecesaria, hay cosas mayores que esos detalles.
ej: cuando cambia de valor el array Spawn[n]
xq en diferentes lineas la misma funcion? me refiero a SetPlayerPos(playerid, (salto de linea) codigo, (salto de linea) codigo, (salto de linea) codigo,);? eso da errores.

es el de LVDM