Salut Julien :)
Je l'ai fait.
#include <a_samp>
#include <float>
new Float:Dm1[5][3] = { // TAbleau
{-1288.3530,2516.2642,87.1486},
{-1308.3904,2514.4939,87.0790},
{-1329.6014,2525.6045,87.1134},
{-1316.7584,2541.0601,87.7422},
{-1305.2456,2546.1252,90.3281}
};
new DM[MAX_PLAYERS]; // on défini
new PlayerName[MAX_PLAYER_NAME];
#define COLOR_GREEN 0x33AA33AA
#define COLOR_RED 0xAA3333AA
public OnPlayerConnect(playerid)
{
DM[playerid] = 0;
return 1;
}
public OnPlayerSpawn(playerid)
{
if (DM[playerid] == 1) // si le joueur est au dm1 on le met à la pos
{
new rand = random(sizeof(Dm1));
SetPlayerPos(playerid, Dm1[rand][0], Dm1[rand][1], Dm1[rand][2]); // ton tableau
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/dm1", cmdtext, true, 10) == 0)
{
if( DM[playerid] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Vous êtes déjà en DM1 ! ");
return 1;
}
if (DM[playerid] == 0)
{
new rand = random(sizeof(Dm1));
DM[playerid] = 1; // on le met dans le dm1
SetPlayerPos(playerid, Dm1[rand][0], Dm1[rand][1], Dm1[rand][2]); // ton tableau
new nom[128];
new msg[128];
GetPlayerName(playerid, nom, sizeof(nom));
format(nom, sizeof(nom), "%s a rejoint le DM 1 (/dm1)", nom, playerid);
SendClientMessageToAll(COLOR_GREEN, nom);
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(msg, sizeof(msg), "[DM1]%s", PlayerName);
SetPlayerName(playerid, msg);
return 1;
}
return 1;
}
if (strcmp("/dmq", cmdtext, true, 10) == 0)
{
if (DM[playerid] == 0)
{
SendClientMessage(playerid, COLOR_RED, "Vous pouvez utiliser cette commande que en DM !");
return 1;
}
if (DM[playerid] == 1)
{
new nom[128];
DM[playerid] = 0; // on le met dans le jeu normal
SpawnPlayer(playerid); // on le fait respawn
SetPlayerName(playerid, PlayerName);
GetPlayerName(playerid, nom, sizeof(nom));
format(nom, sizeof(nom),"%s n'est plus en DM", nom, playerid);
SendClientMessageToAll(COLOR_GREEN, nom);
return 1;
}
return 1;
}
return 0;
}
A+
Karting06
PS: Si c'est trop long, veuillez me le dire :)