GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Showroom SA:MP => Discussion démarrée par: karimos le 07 Janvier 2012, 23:53:53

Titre: Series De Commande Et Function utiles
Posté par: karimos le 07 Janvier 2012, 23:53:53
Description

Bonjours j'ai cree ce topic pour y mettre les commande utiles ainsi que les function
si vous voulait participer poser votre commande/function dans une réponse et je l'ajouterais

PS :: j'utliserait les plugin suivant dans mes function et commande
//-------------------------------- COMMAND -------------------------------------//

gotop[playerid] // Teleporte l'admin vers l'id de joueur
CMD:gotop(playerid, params[])
{
new pid,
str[128],
Float:pos[3];
if(sscanf(params, "i", pid)) return SendClientMessage(playerid, COLOR_ERROR, "Usage : gotop [playerid]");
if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOR_ERROR, "Id invalide du joueur");
GetPlayerPos(pid,pos[0],pos[1],pos[2]);
SetPlayerPos(playerid, pos[0], pos[1], pos[2]);
format(str, sizeof(str), "Vous voues etes teleporté au joueur : %s", PlayerName(pid));
return SendClientMessage(playerid, COLOR_GREEN, str);
}



ban[playerid][Time][reason] // ban le joueur pour un temps defini(utilisation de mysql)

// Executez cette requete dans votre base de donnes //

DROP TABLE IF EXISTS `banlist`;
CREATE TABLE `banlist` (
  `id` int(5) NOT NULL AUTO_INCREMENT,
  `name` varchar(25) NOT NULL,
  `ip` varchar(50) NOT NULL,
  `time` int(29) NOT NULL,
  `reason` varchar(256) NOT NULL,
  `adminname` varchar(25) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

// Voici le Code A recopier //

SetTimer("CountTimeBan", 60000, true); // Dans OnGameModeIni

// a la fin de votre Code //

public CountTimeBan()
{
new query[129], time;
    for (new i = 1; i < 100 ; i++)
{
format(query, sizeof(query), "SELECT time FROM banlist WHERE id = %d",i);
mysql_query(query);
mysql_store_result();
time = mysql_fetch_int();
if (mysql_num_rows() !=0)
{
   if(time == 0)
   {
format(query, sizeof(query), "DELETE FROM banlist WHERE id = %d ",i );
mysql_query(query);
}
else
{
format(query, sizeof(query), "UPDATE banlist SET time = %d WHERE id = %d",time-1, i);
mysql_query(query);
}
}
        mysql_free_result();
}
return 1;
}


freeze/unfreeze[playerid]/color] // sert a freeze et unfreezer un joueur


  CMD:freeze(playerid, params[])
{
new pid;
if (sscanf(params[], "i", pid)) return SendClientMessage(playerid, COLOR_RED, "Usage : freeze[playerid]");
if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOR_ERROR, "Id invalide du joueur");
TogglePlayerControllable(pid, 0);
}

CMD:unfreeze(playerid, params[])
{
new pid;
if (sscanf(params[], "i", pid)) return SendClientMessage(playerid, COLOR_RED, "Usage : unfreeze[playerid]");
if(!IsPlayerConnected(pid)) return SendClientMessage(playerid, COLOR_ERROR, "Id invalide du joueur");
TogglePlayerControllable(pid, 1);
}


//-------------------------------- Function -------------------------------------//


AFKTimer // AFk systeme avec timer
// Au debut de votre Code

forward AFKTimer();
new Float:gPlayerPos[MAX_PLAYERS][6];

// Dans OnGameModeIni

SetTimer("AFKTimer", 3 * 60000, true);

// Au fin de votre code
public AFKTimer() {
for(new i =0 ; i< MAX_PLAYERS; i++)
  {

GetPlayerPos(i, gPlayerPos[i][0], gPlayerPos[i][1], gPlayerPos[i][2]);
if(gPlayerPos[i][0] == gPlayerPos[i][3] && gPlayerPos[i][1] == gPlayerPos[i][4] && gPlayerPos[i][2] == gPlayerPos[i][5])
{
RemovePlayerFromVehicle(i);
SendClientMessage(i, COLOR_GREY, "Vous avait éte deconnecté a cause de votre inactivité.");
Kick(i);
}
else
{
gPlayerPos[i][3] = gPlayerPos[i][0];
gPlayerPos[i][4] = gPlayerPos[i][1];
gPlayerPos[i][5] = gPlayerPos[i][2];
}
}
}

PlayerName // function qui return le nom du joueur en utilisant l'id
stock PlayerName(playerid)
{
new pname[25];
GetPlayerName(playerid,pname,sizeof(pname));
return pname;
}

j'ajouterais au fur et a mesur de nouvelle function ...
Titre: Re : Series De Commande Et Function utiles
Posté par: S!m le 08 Janvier 2012, 02:47:07
Salut,

ne serait-ce pas plus judicieux de les mettre dans ce topic:
http://www.gtaonline.fr/forums/index.php/topic,2149.0.html (http://www.gtaonline.fr/forums/index.php/topic,2149.0.html)

++Sim++
Titre: Re : Series De Commande Et Function utiles
Posté par: Ssk le 08 Janvier 2012, 11:36:40
Salut, c'est sympa de ta part de partager des commandes de bases mais elles ont toutes déjà été faites et postées dans code scripts utiles.
Titre: Re : Series De Commande Et Function utiles
Posté par: karimos le 08 Janvier 2012, 12:11:20
ah deso j’avais pas vue ce poste veuillez supprimer le mien .