SA-MP Forums Archive
[AYUDA]modo de bomba - 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: [AYUDA]modo de bomba (/showthread.php?tid=165904)



[AYUDA]modo de bomba - JoseDeLaVilla - 06.08.2010

holaaa, bueno soy nuevo y quisiera hacerles una pregunta...
la cosa es que yo tengo GM TDM que me crearon para mi, consiste en 2 bases, terroristas vs swat, pero quisiera saber como podria hacer para que los terroristas puedan plantar una bomba en un checkpoint y que los swat puedan desactivarlas...
yo intente hacerlo mediante checkpoints y timers pero no logre realizarlo :S

bueno espero puedan ayudarme, desde ya gracias


Respuesta: [AYUDA]modo de bomba - Jesus^ - 06.08.2010

Puedes Usar Estos FS. (Editarlo)
http://forum.sa-mp.com/showthread.ph...highlight=Bomb
http://forum.sa-mp.com/showthread.ph...highlight=Bomb


Respuesta: [AYUDA]modo de bomba - JoseDeLaVilla - 06.08.2010

mmm bien, podre guiarme con estos gracias, pero el problema sera para hacer que los swats puedan desactivar
eso es algo que no se hacerlo


Re: [AYUDA]modo de bomba - TheChaoz - 06.08.2010

si el timer la hace explotar, hace un comando que elimine ese timer.
ej:
pawn Код:
if(strcmp(cmdtext, "/desactivar", true) == 0){
    if(gTeam[playerid] == THEAM_SWAT({//si el jugador es del equipo swat...
        if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z);//aca reemplazas las coordenadas X, Y, Z por las de la bomba, evita que usen el comando en cualquier parte, y los obliga a estar cerca de la bomba
            if(BombaTimer != 0){//si el timer no esta activo entonces la bomba no fue plantada...
                KillTimer(BombaTimer);//elimina el timer que la hace explotar
                return SendClientMessageToAll(0xFF00FFFF, "Info: La bomba fue desactivada!");
            }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: la bomba no ha sido plantada");
        }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Estas muy lejos de la bomba");
    }esle return SendClientMessage(playerid, 0xFF0000FF, "ERROR: este comando es solo para los swat");
}
claro que es solo un ejemplo para que puedas guiarte


Respuesta: Re: [AYUDA]modo de bomba - JoseDeLaVilla - 06.08.2010

Quote:
Originally Posted by the_chaoz
Посмотреть сообщение
si el timer la hace explotar, hace un comando que elimine ese timer.
ej:
pawn Код:
if(strcmp(cmdtext, "/desactivar", true) == 0){
    if(gTeam[playerid] == THEAM_SWAT({//si el jugador es del equipo swat...
        if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z);//aca reemplazas las coordenadas X, Y, Z por las de la bomba, evita que usen el comando en cualquier parte, y los obliga a estar cerca de la bomba
            if(BombaTimer != 0){//si el timer no esta activo entonces la bomba no fue plantada...
                KillTimer(BombaTimer);//elimina el timer que la hace explotar
                return SendClientMessageToAll(0xFF00FFFF, "Info: La bomba fue desactivada!");
            }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: la bomba no ha sido plantada");
        }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Estas muy lejos de la bomba");
    }esle return SendClientMessage(playerid, 0xFF0000FF, "ERROR: este comando es solo para los swat");
}
claro que es solo un ejemplo para que puedas guiarte
Si gracias pero en el caso de que quisiera que los swats tarden masomenos 5 segundos en desactivar como seria??
+perdon si soy algo molesto xD


Re: [AYUDA]modo de bomba - TheChaoz - 06.08.2010

podria ser algo asi:
pawn Код:
new Desactivando[MAX_PLAYERS]; //array global
//OnPlayerCommandText
if(strcmp(cmdtext, "/desactivar", true) == 0){
    if(gTeam[playerid] == THEAM_SWAT({//si el jugador es del equipo swat...
        if(IsPlayerInRangeOfPoint(playerid, 5.0, X, Y, Z);//aca reemplazas las coordenadas X, Y, Z por las de la bomba, evita que usen el comando en cualquier parte, y los obliga a estar cerca de la bomba
            if(BombaTimer != 0){//si el timer no esta activo entonces la bomba no fue plantada...
                Desactivando[playerid] = 1;
                SendClientMessage(playerid, 0x00FFFFFF, "Info: Tardaras 5 segundos en desactivar la bomba");
            }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: la bomba no ha sido plantada");
        }else return SendClientMessage(playerid, 0xFF0000FF, "ERROR: Estas muy lejos de la bomba");
    }esle return SendClientMessage(playerid, 0xFF0000FF, "ERROR: este comando es solo para los swat");
}
//OnGameModeInit
SetTimer("CheckT", 1000, 1);
//el timer
forward CheckT();
public CheckT()
{
    for(new i=0; i<MAX_PLAYERS; i++){
        if(IsPlayerConnected(i) && Desactivando[i] = 1){
            if(IsPlayerInRangeOfPoint(i, 5.0, X, Y, Z)){
                new DBomba;
                DBomba++;
                if(DBomba == 5){
                    KillTimer(BombaTimer);//elimina el timer que la hace explotar
                    return SendClientMessageToAll(0xFF00FFFF, "Info: La bomba fue desactivada!");
                    Desactivando[i] = 0;
                }
            }
            else{
                Desactivando[i] = 0;
                SendClientMessage(i, 0xFF0000FF, "Info: Has dejado de desactivar la bomba");
            }
        }
    }
}



Respuesta: [AYUDA]modo de bomba - JoseDeLaVilla - 06.08.2010

pero aunque el timer este en OnGameModeIntm igual al usar el comando para desactivar correra es tiempo


Re: [AYUDA]modo de bomba - TheChaoz - 06.08.2010

no entendi


Respuesta: [AYUDA]modo de bomba - JoseDeLaVilla - 07.08.2010

osea, si pongo el SetTimer("CheckT", 1000, 1); en OnGameModeInt, al usar el comando para desactivar, lo mismo funcionara el tiempo?, no tendria q ir dentro del comando?


Re: [AYUDA]modo de bomba - TheChaoz - 07.08.2010

va a funcionar, xq ese timer se repite todo el tiempo para todos los jugadores.