• 09 Juillet 2025, 06:40:01


Auteur Sujet: Checkpoint diseable pour TOUT le monde  (Lu 1510 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Checkpoint diseable pour TOUT le monde
« le: 26 Mars 2008, 15:49:26 »
Salut ^^ J'aimerais savoir comment faire pour que quand quelqu'un passe dans un check point, celui ci s'efface pour tout le monde et non pas seulement pour le player qui est passer dedans ^^

J'ai été voir dans les tutos, celui de Urban, mais il n'y a qu'une fonctionne pour supprimer un Checkpoint : DiseablePlayerCheckpoint

Je voudrais savoir s'il y quand même moyen de faire ce que je veut ;)

Du genre diseable Check; ou autre.

Sinon je voudrais savoir comment faire pour que quand deux players se sont mis ensembles en tapant une commande, il soient mis dans une voiture en tant que, un conducteur et l'autre passager ^^
« Modifié: 26 Mars 2008, 16:10:45 par [StAfF]mAn »
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|

Hors ligne rivoal29

  • *
  • Bandit
  • Messages: 269
    • Voir le profil
Re : Checkpoint diseable pour TOUT le monde
« Réponse #1 le: 26 Mars 2008, 16:16:10 »
Je pourrait voir le code que tu as déjà que je voit ?  ::)  :happy
« Modifié: 26 Mars 2008, 16:18:44 par rivoal29 »


Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Re : Checkpoint diseable pour TOUT le monde
« Réponse #2 le: 26 Mars 2008, 16:24:44 »
Ok :

new Checkcar;

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext,"/DMcar2", true)==0){
    if(IsPlayerInAnyVehicle(playerid)==1){
    new playerdm[MAX_PLAYER_NAME];
    new PlayerConnecteddm[256];
    new carid;
    DMcar[playerid] = 2;
    Checkcar = SetPlayerCheckpoint(playerid, -2372.9285,-1583.5168,498.7269, 5);
    GetPlayerName(playerid, playerdm, sizeof(playerdm));
    format(PlayerConnecteddm, sizeof(PlayerConnecteddm), "Le player %s est entré dans la zone DMcar2, tapez /DMcar2 pour le rejoindre", playerdm);
    SendClientMessageToAll(COLOR_YELLOW, PlayerConnecteddm);
    SendClientMessage(playerid, COLOR_YELLOW, "Trouve toi un partener et commence le DM, un conducteur, un tireur !!");
    SendClientMessage(playerid, COLOR_YELLOW, "L'arrivée pour arrêter le DMcar2 est en HAUT du Mont Chililiad");
    GameTextForPlayer(playerid, "~r~DM CAR 2~n~Faites vos equipes et combattez !!",9000,6);
    SetPlayerInterior(playerid,0);
    SetVehiclePos(GetPlayerVehicleID(playerid), 2685.3147,2602.3281,10.5501);
    GivePlayerWeapon(playerid, 29, 9999);
    GivePlayerWeapon(playerid, 34, 9999);
    SetVehicleHealth(carid, 500);
}else if(IsPlayerInAnyVehicle(playerid)==0){
SendClientMessage(playerid, COLOR_RED, "Tu n'est pas en voiture !!!");
}
}

public OnPlayerEnterCheckpoint(playerid)
{
if (Checkcar)
{
SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint.");
GameTextForPlayer(playerid,"~r~Bravo vous avez terminer le ~g~DM car 2 ~r~entier !!!", 6000, 3);
DMcar[playerid]= 0;
DisablePlayerCheckpoint(Checkcar);
}
return 1;
}
Voila ^^

A savoir rivoal que je suis en train de scripter la commande pour mettre par paire de players ;)

Petit prob aussi avec la cmd pour mettre deux players ensembles ^^ xDD Pouvez m'aider ?? SVP ;)
« Modifié: 26 Mars 2008, 16:42:37 par [StAfF]mAn »
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|

Hors ligne rivoal29

  • *
  • Bandit
  • Messages: 269
    • Voir le profil
Re : Checkpoint diseable pour TOUT le monde
« Réponse #3 le: 26 Mars 2008, 16:44:40 »
Bon j'essaye  ;) :
Code: (cpp) [Sélectionner]
//en haut
new DM2[MAX_PLAYERS];
//dans ta commande tu rajoute
DM2[playerid]=1;
//dans public OnPlayerEnterCheckpoint(playerid)
public OnPlayerEnterCheckpoint(playerid)
{
if (Checkcar)
{
SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint.");
GameTextForPlayer(playerid,"~r~Bravo vous avez terminer le ~g~DM car 2 ~r~entier !!!", 6000, 3);
DMcar[playerid]= 0;
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(DM2[i] == 1)
{
DisablePlayerCheckpoint(i);//dans ton code c'est l'id du chekpoint que tu a mi la le i sinifie tous les player qui sont dans le dm ( avec la variable DM2 qui s'active quand il s'inscrive )
DM2[i]=0; // remit a 0 pour tout les gens du DM
}
}
return 1;
}


Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Re : Checkpoint diseable pour TOUT le monde
« Réponse #4 le: 26 Mars 2008, 16:56:08 »
Merci ça a l'air de fonctionner ;)

Reste plus que la cmd pour mettre par paire, et de mettre les players dans une voiture, un conducteur l'autre passagé ;)

Merci encore rivoal
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|

Hors ligne rivoal29

  • *
  • Bandit
  • Messages: 269
    • Voir le profil
Re : Re : Checkpoint diseable pour TOUT le monde
« Réponse #5 le: 26 Mars 2008, 18:53:53 »
Citer
Reste plus que la cmd pour mettre par paire, et de mettre les players dans une voiture, un conducteur l'autre passagé ;)

Bon  :... vu que je m'ennuyait je tait fait le code
new Checkcar;
//en haut
new DM2[MAX_PLAYERS];
new pid;

// OnPlayerCommandText
public OnPlayerCommandText(playerid, cmdtext[])
{

    if(strcmp(cmdtext,"/DMcar2", true)==0){

    pid = strtok(cmdtext, idx);
if (!strlen(tmpp))
{
SendClientMessage(playerid, COLOR_GREEN, "USAGE: /DMcar2 [playerid du copain]");
return 1;
}
if (!(IsPlayerConnected(pid)))
{
SendClientMessage(playerid, COLOR_RED, "Joueur pas conecter !");
return 1;
}
    if(IsPlayerInAnyVehicle(playerid)==1){
    new playerdm[MAX_PLAYER_NAME];
    new PlayerConnecteddm[256];
    new carid;
    DMcar[playerid] = 2;
    Checkcar = SetPlayerCheckpoint(playerid, -2372.9285,-1583.5168,498.7269, 5);
    Checkcar = SetPlayerCheckpoint(pid -2372.9285,-1583.5168,498.7269, 5);
    GetPlayerName(playerid, playerdm, sizeof(playerdm));
    format(PlayerConnecteddm, sizeof(PlayerConnecteddm), "Le player %s et le joueur %s sont entré dans la zone DMcar2, tapez /DMcar2 pour le rejoindre", playerdm,GetPlayerName(pid));
    SendClientMessageToAll(COLOR_YELLOW, PlayerConnecteddm);
    DM2[playerid]=1;
    SendClientMessage(playerid, COLOR_YELLOW, "Trouve toi un partener et commence le DM, un conducteur, un tireur !!");
    SendClientMessage(playerid, COLOR_YELLOW, "L'arrivée pour arrêter le DMcar2 est en HAUT du Mont Chililiad");
    GameTextForPlayer(playerid, "~r~DM CAR 2~n~Faites vos equipes et combattez !!",9000,6);
    SetPlayerInterior(playerid,0);
    SendClientMessage(pid COLOR_YELLOW, "Trouve toi un partener et commence le DM, un conducteur, un tireur !!");
    SendClientMessage(pid, COLOR_YELLOW, "L'arrivée pour arrêter le DMcar2 est en HAUT du Mont Chililiad");
    GameTextForPlayer(pid, "~r~DM CAR 2~n~Faites vos equipes et combattez !!",9000,6);
    SetPlayerInterior(pid,0);
    SetVehiclePos(GetPlayerVehicleID(playerid), 2685.3147,2602.3281,10.5501);
    PutPlayerInVehicle(pid,GetPlayerVehicleID(playerid),1);
    GivePlayerWeapon(pid, 29, 9999);
    GivePlayerWeapon(pid, 34, 9999);
    SetVehicleHealth(carid, 500);
}else if(IsPlayerInAnyVehicle(playerid)==0){
SendClientMessage(playerid, COLOR_RED, "Tu n'est pas en voiture !!!");
}
}
//OnPlayerEnterCheckpoint
public OnPlayerEnterCheckpoint(playerid)
{
if (Checkcar)
{
SendClientMessage(playerid,0xFFFF00AA, "> CheckPoint atteint.");
GameTextForPlayer(playerid,"~r~Bravo vous avez terminer le ~g~DM car 2 ~r~entier !!!", 6000, 3);
DMcar[playerid]= 0;
for(new i = 0; i < MAX_PLAYERS; i ++)
{
if(DM2[i] == 1)
{
DisablePlayerCheckpoint(i);//dans ton code c'est l'id du chekpoint que tu a mi la le i sinifie tous les player qui sont dans le dm ( avec la variable DM2 qui s'active quand il s'inscrive )
DM2[i]=0; // remit a 0 pour tout les gens du DM
}
}
return 1;
}

Donc le player est obliger de taper /dmcar2 + id de son copain
Voila si ta a des erreur dit le moi :king


Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Re : Checkpoint diseable pour TOUT le monde
« Réponse #6 le: 26 Mars 2008, 20:40:05 »
Voici la commande, elle compile bien mais ne fonctionne pas :s

    if(strcmp(cmdtext,"/DMcar2", true)==0){
    new pid, tmpp[256];
    new carid;
    new texte[256];
    new name[MAX_PLAYER_NAME];
    format(texte, sizeof(texte), " ", name);
    tmpp = strtok(cmdtext, idx);
if(!strlen(tmpp)) {
SendClientMessage(playerid, COLOR_RED, "USAGE: /DMcar2 [playerid]");
return 1;
}
pid = strval(tmpp);
if(!IsPlayerConnected(pid)) {
SendClientMessage(playerid, COLOR_RED, "Ce player n'est pas connecté");
return 1;
}
    if(IsPlayerInAnyVehicle(playerid)==1){
    DMcar2[playerid] = 1;
    Checkcar = SetPlayerCheckpoint(playerid, -2372.9285,-1583.5168,498.7269, 5);
    Checkcar = SetPlayerCheckpoint(pid, -2372.9285,-1583.5168,498.7269, 5);
    GetPlayerName(playerid, name, sizeof(name));
format(texte, sizeof(texte), " %s et son partener %s sont entrés dans le DMcar2, taez /DMcar2 (ID partener) pour les rejoindre !!", pid, name);
GetPlayerName(pid, name, sizeof(name));
SendClientMessageToAll(COLOR_YELLOW, texte);
    SetPlayerInterior(playerid,0);
    SetPlayerInterior(pid,0);
    SendClientMessage(playerid, COLOR_YELLOW, "Le tireur essaie de tuer les autres pendant que le pilote va n'importe ou !!!");
    SendClientMessage(playerid, COLOR_YELLOW, "L'arrivée pour arrêter le DMcar2 est en HAUT du Mont Chililiad");
    GameTextForPlayer(playerid, "~r~DM CAR 2~n~Faites vos equipes et combattez !!",9000,6);
    SendClientMessage(pid, COLOR_YELLOW, "Le tireur essaie de tuer les autres pendant que le pilote va n'importe ou !!!");
    SendClientMessage(pid, COLOR_YELLOW, "L'arrivée pour arrêter le DMcar2 est en HAUT du Mont Chililiad");
    GameTextForPlayer(pid, "~r~DM CAR 2~n~Faites vos equipes et combattez !!",9000,6);
    SetVehiclePos(GetPlayerVehicleID(playerid), 2685.3147,2602.3281,10.5501);
    PutPlayerInVehicle(pid,GetPlayerVehicleID(playerid),1);
    GivePlayerWeapon(pid, 29, 9999);
    GivePlayerWeapon(pid, 34, 9999);
    SetVehicleHealth(carid, 500);
}else if(IsPlayerInAnyVehicle(playerid)==0){
SendClientMessage(playerid, COLOR_RED, "Tu n'est pas en voiture !!!");
}
}
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|

Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Re : Checkpoint diseable pour TOUT le monde
« Réponse #7 le: 27 Mars 2008, 23:40:34 »
Up !!

Pleas ^^
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|

Hors ligne [StAfF]MaN

  • [StAfF] forever ^^
  • *
  • Gangster
  • [StAfF] un jour, [StAfF] toujours ^^ !!!
  • Messages: 1040
    • Voir le profil
    • SITE [StAfF]
Re : Checkpoint diseable pour TOUT le monde
« Réponse #8 le: 28 Mars 2008, 22:06:57 »
triple poste... [english mode : ON]Sorry but it's verry important for me ...[english mode : OFF]

Quelqu'un peut m'aider ??


PS : Je remercie encore rivoal pour m'avoir filer un gros coup de main ;)  :laugh

Pleas Pleas Pleas je rame a mort !!!
« Modifié: 30 Mars 2008, 12:40:46 par [StAfF]mAn »
^v^v^v^v|
   StAfF  |                              IP: gtaunderground.No-Ip.org

^v^v^v^v|