OnPlayerSpawn no dejar obtener mas datos
#1

hola, tengo un problema con onplayerspawn, principalmente estoy haciendo un fs y no entiendo porque no funciona, esto es lo que quiero hacer:

que cuando carge el fs si el jugador pone el comando lo mandara al DM, el DM[playerid] esta false al entrar al server y cuando se carga el fs, hay un bucle que los deja a todos los jugadores en false, EL PROBLEMA ES que dentro del DM muero y al proximo respawn no me manda al mundo sino que el codigo caga bien el IF(DM) pero tambien carga lo del gm que tiene otro mundo y otras posiciones, en RESUMEN quiero que si estoy en el lugar no cargue los demas codigos siguientes y se quede hasta ahi, osea si esta en DM cargue eso y nada mas.

Asi lo tengo para darles un ejemplo, el codigo es mayor pero puse esto porque lo otro no es necesario
PHP код:
public OnPlayerSpawn(playerid)
{
   if(
DM[playerid] == true)
   {
         
SetPlayerInterior(playerid,0);
          
SetPlayerVirtualWorld(playerid,15489);
         return 
0;
    }
    return 
1;

saludos
Reply
#2

retorna lo a 1
Reply
#3

Quote:
Originally Posted by Parka
Посмотреть сообщение
retorna lo a 1
tampoco funciona
Reply
#4

No es necesario crear un loop para situarle false a todos, total cuando creas una nueva array todas estбn en cero, tampoco tienes porque usar return 0;, usando return 1; privarбs a que no pase a mбs estando al pilar de la callback. has situado en algъn momento la variable boleana a verdadero?
Reply
#5

Quote:
Originally Posted by Zume-Zero
Посмотреть сообщение
No es necesario crear un loop para situarle false a todos, total cuando creas una nueva array todas estбn en cero, tampoco tienes porque usar return 0;, usando return 1; privarбs a que no pase a mбs estando al pilar de la callback. has situado en algъn momento la variable boleana a verdadero?
si, cuando va al DM con comando, es cierto pero para asegurar bien, lo de usar 0 o 1 igual no funciona, es un problema bien raro, nunca antes me habia pasado
Reply
#6

Quote:
Originally Posted by jurgen
Посмотреть сообщение
si, cuando va al DM con comando, es cierto pero para asegurar bien, lo de usar 0 o 1 igual no funciona, es un problema bien raro, nunca antes me habia pasado
y si pones SetPlayerSpawn al final de OnPlayerDeath? xD
Reply
#7

Quote:
Originally Posted by Zume-Zero
Посмотреть сообщение
y si pones SetPlayerSpawn al final de OnPlayerDeath? xD
ya probe y tampoco funciona, me sigue mandando a posiciones del codigo de onplayerspawn del gm rayos...
Reply
#8

Quote:
Originally Posted by jurgen
Посмотреть сообщение
ya probe y tampoco funciona, me sigue mandando a posiciones del codigo de onplayerspawn del gm rayos...
їEstas usando un bool? porque no usas un enum
pawn Код:
enum EnDM
{
EstaDM
};
   
new informacion[MAX_PLAYERS][EnDM];

Informacion[playerid][EstaDM] = 0;//Al conectar y al Desconectar
Informacion[playerid][EstaDM] = 1;//En el CMD

//y en el Spawn
if(Informacion[playerid][EstaDM] == 1)
{
new DmR = random(2);
switch(DmR)
{
case 0: SetPlayerPos(playerid,x,y,x);
case 1: SetPlayerPos(playerid,x,y,x);
}
SetPlayerInterior(playerid,0),SetPlayerVirtualWorld(playerid,5);//Creo no recuerdo que el max world es 2000
}
Realmente lo que entendi es que la funciуn declara al spawnear stando en DM no funciona
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)