Bonjour ^^ est ce que vous pouvez m'aider pour un petit prob avec deux checkpoints qui doivent téléporter :
J'ai fait un zone Dm, mais dans cette zone il y a une porte qui me gène, (dans le caligulas pour aller au coffre près des bureaux) avec la possibilité de passer de l'autre coté puisque dans une mission on le fait ;)
Alors j'ai mis un checkpoint d'un coté de la porte qui me TP de l'autre coté, et de l'autre coté j'ai fait un autre checkpoint, pour me TP de l'autre coté, le prob, c'est que quand je prend le 1er checkpoint, j'arrive bien de l'autre coté, mais le deuxième checkpoint me TP au même endroit que le 1er, de plus, quand un player se déco du dm, les checkpoints disparaissent tous les deux....
Voici mon code :
//en haut du script
new check;
new check2;
//dans OnPlayerSpawn
script....
else if(DM[playerid] == 9)
{
SetPlayerInterior(playerid,1);
new rand = random(sizeof(Dm9));
SetPlayerPos(playerid, Dm9[rand][0], Dm9[rand][1], Dm9[rand][2]);// place le joueur
GivePlayerWeapon(playerid, 29, 9999);
GivePlayerWeapon(playerid, 34, 9999);
SetPlayerArmour(playerid, 100);
check = SetPlayerCheckpoint(playerid, 2167.0818,1618.6169,999.9771, 2);
}
script.....
//dans OnPlayerCommandText
script....
if(strcmp(cmdtext,"/DM9", true)==0){
new playerdm[MAX_PLAYER_NAME];
new PlayerConnecteddm[256];
DM[playerid] = 9;
DMArena[playerid] = 1;
GetPlayerName(playerid, playerdm, sizeof(playerdm));
format(PlayerConnecteddm, sizeof(PlayerConnecteddm), "Le player %s est entré dans la zone DM9, tapez /DM9 pour le rejoindre", playerdm);
SendClientMessageToAll(COLOR_YELLOW, PlayerConnecteddm);
GameTextForPlayer(playerid, "~r~DM du Caligulas~n~Faites vos equipes et combattez !!",9000,6);
SetPlayerInterior(playerid,1);
new rand = random(sizeof(Dm9));
SetPlayerPos(playerid, Dm9[rand][0], Dm9[rand][1], Dm9[rand][2]);// place le joueur
GivePlayerWeapon(playerid, 29, 9999);
GivePlayerWeapon(playerid, 34, 9999);
SetPlayerArmour(playerid, 100);
check = SetPlayerCheckpoint(playerid, 2167.0818,1618.6169,999.9771, 2);
}
if(strcmp(cmdtext,"/qDM9", true)==0){//si il tape la cmd /qDM3
if(DM[playerid]==0){/* Si aucun DM n'est activé pour le joueur */
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone DM, tu ne peut donc pas quitter de zone");
}else if(DM[playerid]==9){//si il est dans la zone 9
SendClientMessageToAll(COLOR_BLUE,"Un joueur a quitté la zone DM9");
SetPlayerInterior(playerid,0);
DM[playerid] = 0;
couleur[playerid] = 0;
DMArena[playerid] = 0;
DisablePlayerCheckpoint(check);
DisablePlayerCheckpoint(check2);
if(couleur[playerid]==1){
SetPlayerColor(playerid, DMrouge[playerid]);
SendClientMessage(playerid,COLOR_RED,"Tu viens de quitter une zone, tu était en Team Dm Rouge, tu est redevenu player normale, pour retourner dans une team, utilise les commandes /dmviolet ou /dmrouge.");
DM[playerid] = 0;
couleur[playerid] = 0;
DMArena[playerid] = 0;
DisablePlayerCheckpoint(check);
DisablePlayerCheckpoint(check2);
}
if(couleur[playerid]==2){
SetPlayerColor(playerid, DMviolet[playerid]);
SendClientMessage(playerid,COLOR_RED,"Tu viens de quitter une zone, tu était en Team Dm Violet, tu est redevenu player normale, pour retourner dans une team, utilise les commandes /dmviolet ou /dmrouge.");
DM[playerid] = 0;
couleur[playerid] = 0;
DMArena[playerid] = 0;
DisablePlayerCheckpoint(check);
DisablePlayerCheckpoint(check2);
}
if(couleur[playerid] == 0){
DM[playerid] = 0;
DMArena[playerid] = 0;
DisablePlayerCheckpoint(check);
DisablePlayerCheckpoint(check2);
}
new rand = random(sizeof(PlayerSpawns));
SetPlayerPos(playerid, PlayerSpawns[rand][0], PlayerSpawns[rand][1], PlayerSpawns[rand][2]);// place le joueur
}else if(DM[playerid]==1){//on le remplace par 1
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DM[playerid]==2){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DMcar[playerid]==3){
SendClientMessage(playerid, COLOR_RED,"Tu n'es pas en zone 9");
}else if(DM[playerid]==4){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DM[playerid]==5){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DM[playerid]==6){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DM[playerid]==7){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DM[playerid]==8){
SendClientMessage(playerid,COLOR_RED,"Tu n'est pas en zone 9");
}else if(DMcar[playerid]==1){
SendClientMessage(playerid, COLOR_RED,"Tu n'es pas en zone 9");
}else if(DMcar2[playerid]==1){
SendClientMessage(playerid, COLOR_RED,"Tu n'es pas en zone 9");
}
}
script...
// dans OnPlayerEnterCheckpoint
script...
if(IsPlayerInCheckpoint(check)){
SetPlayerPos(playerid, 2174.0752,1618.7267,999.9766);
check2 = SetPlayerCheckpoint(playerid, 2171.0745,1618.7510,999.9766, 2);
return 1;
}
else if(IsPlayerInCheckpoint(check2)){
SetPlayerPos(playerid, 2163.6257,1618.6069,999.9724);
check = SetPlayerCheckpoint(playerid, 2167.0818,1618.6169,999.9771, 2);
}
return 1;
}
Voila.... Si vous pouviez m'éclairer ;) Merci d'avance :)