Voilà un petit codes pour un derby .
spawn avec véhicules.
new gPlayerVehicles[MAX_PLAYERS];
new IsInDM[MAX_PLAYERS];
new initialname[MAX_PLAYERS][62];
new playerfinal[62];
////////////////////////////////////////////////////////////////////////////////
new Float:derby[7][4] =
{
{-1425.9888,957.4713,1027.6860,357.3053},
{-1478.7693,986.7899,1028.3901,280.7596},
{-1443.5608,1033.8302,1029.8827,193.7936},
{-1402.1676,1037.2571,1029.9587,179.2527},
{-1351.8804,1028.6732,1028.3414,162.3887},
{-1323.4956,979.3501,1027.8088,61.0256},
{-1361.0549,959.4532,1027.4058,25.7441}
};
////////////////////////////////////////////////////////////////////////////////
public OnPlayerSpawn(playerid)
{
if (IsInDM[playerid] != 0)
{
switch(IsInDM[playerid])
{
case 1:
{
new rand = random(sizeof(derby));
gPlayerVehicles[playerid] = CreateVehicle(503,derby[rand][0],derby[rand][1],derby[rand][2],derby[rand][3],-1,-1,900);
SetVehicleVirtualWorld(gPlayerVehicles[playerid], 15);
LinkVehicleToInterior(gPlayerVehicles[playerid], 15);
SetPlayerVirtualWorld(playerid,15);
SetPlayerInterior(playerid,15);
PutPlayerInVehicle(playerid,gPlayerVehicles[playerid],0);
SetVehicleHealth(gPlayerVehicles[playerid],1000.0);
SetVehicleParamsForPlayer(gPlayerVehicles[playerid],playerid,0,1);
}
}
}
return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerDisconnect(playerid, reason)
{
SendDeathMessage(INVALID_PLAYER_ID, playerid, 201);
if(IsInDM[playerid] != 0)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
}
return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerDeath(playerid, killerid, reason)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
return 1;
}
////////////////////////////////////////////////////////////////////////////////
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/derby", cmdtext, true) == 0)
{
if(IsInDM[playerid] !=0)
{
SendClientMessage(playerid, 0xFFFFFF, "Vous êtes déjà dans un DM !");
return 1;
}
new rand = random(sizeof(derby));
gPlayerVehicles[playerid] = CreateVehicle(503,derby[rand][0],derby[rand][1],derby[rand][2],derby[rand][3],-1,-1,900);
SetVehicleVirtualWorld(gPlayerVehicles[playerid], 15);
LinkVehicleToInterior(gPlayerVehicles[playerid], 15);
SetPlayerVirtualWorld(playerid,15);
SetPlayerInterior(playerid,15);
PutPlayerInVehicle(playerid,gPlayerVehicles[playerid],0);
SetVehicleHealth(gPlayerVehicles[playerid],1000.0);
SetVehicleParamsForPlayer(gPlayerVehicles[playerid],playerid,0,1);
IsInDM[playerid] = 2;
format(playerfinal, 62, "[derby]%s", initialname[playerid]);
SetPlayerName(playerid, playerfinal);
new Name[MAX_PLAYER_NAME],phrase[240];
GetPlayerName(playerid,Name,sizeof(Name));
format(phrase,sizeof(phrase),"%s est au derby {0000FF}(/derby).",Name);
SendClientMessage(playerid, couleur_bleu, "Pour quitter le deathmatch ==>{FFFF00} /dmq");
SendClientMessageToAll(couleur_orange,phrase);
return 1;
}
////////////////////////////////////////////////////////////////////////////////
if(strcmp("/dmq", cmdtext, true) == 0)
{
if(IsInDM[playerid] == 0)
{
SendClientMessage(playerid, 0xFFFFFF, "Vous n'êtes pas dans un DM !");
return 1;
}
if(IsInDM[playerid] != 0)
{
RemovePlayerFromVehicle(gPlayerVehicles[playerid]);
DestroyVehicle(gPlayerVehicles[playerid]);
gPlayerVehicles[playerid] = 0;
}
IsInDM[playerid] = 0;
SetPlayerInterior(playerid,0);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerPos(playerid,-516.7958,2541.3340,53.5156);
SetPlayerFacingAngle(playerid,221.976);
SetPlayerName(playerid, initialname[playerid]);
new Name[MAX_PLAYER_NAME],phrase[240];
GetPlayerName(playerid,Name,sizeof(Name));
format(phrase,sizeof(phrase)," %s viens de quitter le DM {FFFF00}(/dmq).",Name);
SendClientMessageToAll(couleur_rouge,phrase);
return 1;
}
Voilà c'est pas grand choses mais bon ;)
Cordialement Anthony_54