1
Scripting SA-MP [Pawn center] / Demande d'aide pour grilles
« le: 27 Mai 2010, 12:56:37 »
Résolu
Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.
//------------------------------------------[ Newbie Chat ]---------------------------------------------------------------
if(strcmp(cmd, "/newbie", true) == 0 || strcmp(cmd, "/n", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/n)ewbie [Texte]");
SendClientMessage(playerid, COLOR_WHITE, "FONCTION: Permet à un nouveau joueur de demander de l'aide");
return 1;
}
if ((nooon) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, "Le canel pour les nouveaux à été désactivé par un administrateur !");
return 1;
}
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Vous n'êtes pas identifié !");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, "Tu peux pas parler, tu as été silencé par un administrateur !");
return 1;
}
if(gNewb[playerid] == 0)
{
PlayerInfo[playerid][pNewbTimer] = 12;
if (PlayerInfo[playerid][pAdmin] >= 3000)
format(string, sizeof(string), "(( Scripteur %s : %s ))", sendername, playerid ,result);
if (PlayerInfo[playerid][pAdmin] >= 1000)
format(string, sizeof(string), "(( Administrateur %s : %s ))", sendername, playerid ,result);
if (PlayerInfo[playerid][pAdmin] >= 4)
format(string, sizeof(string), "(( Super Modérateur %s : %s ))", sendername, playerid ,result);
if (PlayerInfo[playerid][pAdmin] >= 3)
format(string, sizeof(string), "(( Modérateur %s : %s ))", sendername, playerid ,result);
if (PlayerInfo[playerid][pAdmin] >= 2)
format(string, sizeof(string), "(( Modérateur %s : %s ))", sendername, playerid ,result);
else if (PlayerInfo[playerid][pHelper] == 0)
format(string, sizeof(string), "(( Nouveau %s : %s ))", sendername, playerid , result);
else if (PlayerInfo[playerid][pAdmin] == 1)
format(string, sizeof(string), "(( MDC %s : %s ))", sendername, playerid , result);
else if (PlayerInfo[playerid][pDonateRank] > 0)
format(string, sizeof(string), "(( VIP %s : %s ))", sendername, playerid , result);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pLevel] <= 3 || PlayerInfo[i][pAdmin] > 0 || gNewb[i] == 1)
{
SendClientMessage(i, COLOR_GREEN, string);
ntimer[playerid] = 60;
}
}
}
printf("%s", string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " You must toggle that Channel to On! (/tognewb)");
return 1;
}
}
return 1;
}
//----------------------------------[ Chat des administrateurs ]-----------------------------------------------
if(strcmp(cmd, "/a", true) == 0 || strcmp(cmd, "/admin", true) == 0)
{
if(IsPlayerConnected(playerid))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: (/a)dmin [admin chat]");
return 1;
}
format(string, sizeof(string), "* Admin %s: %s", PlayerInfo[playerid][pAdmin], sendername, result);
if (PlayerInfo[playerid][pAdmin] >= 2)
{
SendAdminMessage(1, COLOR_PURPLE, string);
}
return 1;
}
if (PlayerInfo[playerid][pAdmin] == 2)
{
format(string, sizeof(string), "Modérateur en test: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Modérateur %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 3)
{
format(string, sizeof(string), "Modérateur: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Modérateur %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 4)
{
format(string, sizeof(string), "Super-Modérateur: %s", PlayerInfo[playerid][pAdmin], sendername, result);;
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 5)
{
format(string, sizeof(string), "Administrateur: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 69)
{
format(string, sizeof(string), "Administrateur-Boulet: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 1000)
{
format(string, sizeof(string), "Administrateur Général: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 2000)
{
format(string, sizeof(string), "Fondateur: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
else if (PlayerInfo[playerid][pAdmin] == 3000)
{
format(string, sizeof(string), "Scripteur: %s", PlayerInfo[playerid][pAdmin], sendername, result);
SendClientMessageToAll(COLOR_LIGHTGREEN, string);
printf("Admin %s: %s", sendername, result);
}
return 1;
}
if(strcmp(cmd, "/op", true) == 0)
if (strcmp(cmdtext, "/op", true)==0)
#include <a_samp>
#define FILTERSCRIPT
forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
forward Urban(); // Voici le forward du Timer
new Grille; // Le new de la grille
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print("-Grille By Paradize");
print("--------------------------------------\n");
// Grilles
Grille = CreateObject(ID Objet, X, Y, Z, 0, 0, 0); // Grille
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new sendername[MAX_PLAYER_NAME];
new string[256];
if (strcmp(cmdtext, "/op", true)==0)
{
MoveObject(Grille, X, Y, Z, 3.5); // Coordonnées de la grille quand elle est ouverte
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s prend sa télécommande et ouvre la grille..", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SendClientMessage(playerid, COLOR_WHITE,"Fermeture dans 7 secondes"); // On avertie que la porte va ce fermer dans 7 secondes..
SetTimer("Timer", 7000, 0); //On active le Le Timer
return 1;
}
public Timer() // On retrouve le Timer
{
MoveObject (Grille,X, Y, Z, 2.5); // Coordonnées de la grille quand elle est fermé
return 1;
}
1|480|-2064.285156|-83.469718|34.936653|178.795593|3|1|50000|1|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|0|100|Aucun|0|0|0|0|0|Comet
public OnPlayerDisconnect(playerid)
{
for( new i = 0; i < MAX_MINE; i++)
{
if(Mine[i][planter] == playerid)
{
RemoveMine(i);
}
}
if(Bomb[playerid][TimerID])
{
RemoveBomb(playerid);
}
if(Disarm[playerid])
{
KillTimer(Disarm[playerid]);
Disarm[playerid] = -1;
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
gActivePlayers[playerid]--;
numplayers--;
PlayerInfo[playerid][pAdjustable] = 1;
OnPlayerUpdate(playerid);
new playername[MAX_PLAYER_NAME], string[256];
switch(reason)
{
case 0:
{
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string), "%s a quitté le serveur.(Crash)", playername);
SendClientMessageToAll(COLOR_GRAD1, string);
}
case 1:
{
GetPlayerName(playerid, playername, sizeof(playername));
format(string, sizeof(string), "%s a quitté le serveur.(Quitter)", playername);
SendClientMessageToAll(COLOR_GRAD1, string);
}
}
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(TaxiAccepted[i] < 999)
{
if(TaxiAccepted[i] == playerid)
{
TaxiAccepted[i] = 999;
GameTextForPlayer(i, "~w~Client Taxi~n~~r~quitte le jeu", 5000, 1);
TaxiCallTime[i] = 0;
DisablePlayerCheckpoint(i);
}
}
else if(BusAccepted[i] < 999)
{
if(BusAccepted[i] == playerid)
{
BusAccepted[i] = 999;
GameTextForPlayer(i, "~w~Client Bus~n~~r~quitte le jeu", 5000, 1);
BusCallTime[i] = 0;
DisablePlayerCheckpoint(i);
}
}
}
}
if(GettingCK[playerid] < 999)
{
if(IsPlayerConnected(GettingCK[playerid]))
{
SendClientMessage(GettingCK[playerid], COLOR_YELLOW, "votre tueur à quitté le serveur, essayé plus tard.");
OnCK[GettingCK[playerid]] = 999;
}
}
if(TransportCost[playerid] > 0 && TransportDriver[playerid] < 999)
{
if(IsPlayerConnected(TransportDriver[playerid]))
{
TransportMoney[TransportDriver[playerid]] += TransportCost[playerid];
TransportTime[TransportDriver[playerid]] = 0;
TransportCost[TransportDriver[playerid]] = 0;
format(string, sizeof(string), "~w~Passager dessend~n~~g~gagné $%d",TransportCost[playerid]);
GameTextForPlayer(TransportDriver[playerid], string, 5000, 1);
}
}
if(GotHit[playerid] > 0)
{
if(GetChased[playerid] < 999)
{
if(IsPlayerConnected(GetChased[playerid]))
{
SendClientMessage(GetChased[playerid], COLOR_YELLOW, "Ton tueur à quitté le serveur.");
GoChase[GetChased[playerid]] = 999;
}
}
}
if(PlayerPaintballing[playerid] != 0)
{
PaintballPlayers --;
}
if(PlayerKarting[playerid] > 0 && PlayerInKart[playerid] > 0)
{
KartingPlayers --;
}
if(PlayersChannel[playerid] < 999)
{
IRCInfo[PlayersChannel[playerid]][iPlayers] -= 1;
}
if(HireCar[playerid] != 299)
{
gLastDriver[HireCar[playerid]] = 300;
gCarLock[HireCar[playerid]] = 0;
UnLockCar(HireCar[playerid]);
}
if (gLastCar[playerid] > 0)
{
gLastDriver[gLastCar[playerid]] = 300;
if(PlayerInfo[playerid][pPhousekey] != gLastCar[playerid]-1)
{
gCarLock[gLastCar[playerid]] = 0;
UnLockCar(gLastCar[playerid]);
}
}
if(PlayerBoxing[playerid] > 0)
{
if(Boxer1 == playerid)
{
if(IsPlayerConnected(Boxer2))
{
PlayerBoxing[Boxer2] = 0;
SetPlayerPos(Boxer2, 765.8433,3.2924,1000.7186);
SetPlayerInterior(Boxer2, 5);
GameTextForPlayer(Boxer2, "~r~Match interrompu", 5000, 1);
}
}
else if(Boxer2 == playerid)
{
if(IsPlayerConnected(Boxer1))
{
PlayerBoxing[Boxer1] = 0;
SetPlayerPos(Boxer1, 765.8433,3.2924,1000.7186);
SetPlayerInterior(Boxer1, 5);
GameTextForPlayer(Boxer1, "~r~Match interrompu", 5000, 1);
}
}
InRing = 0;
RoundStarted = 0;
Boxer1 = 255;
Boxer2 = 255;
TBoxer = 255;
}
if(TransportDuty[playerid] == 1)
{
TaxiDrivers -= 1;
}
else if(TransportDuty[playerid] == 2)
{
BusDrivers -= 1;
}
if(PlayerInfo[playerid][pJob] == 11)
{
if(JobDuty[playerid] == 1) { Medics -= 1; }
}
else if(PlayerInfo[playerid][pJob] == 7)
{
if(JobDuty[playerid] == 1) { Mechanics -= 1; }
}
if (PlayerInfo[playerid][pRoadblock] != 0)
{
RemoveRoadblock(playerid);
}
}
public OnPlayerCommandText(playerid, cmdtext[])
{
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new cmd[256];
new tmp[256];
new specplayerid;
new giveplayerid, moneys, idx;
new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
cmd = strtok(cmdtext, idx);
//--------bombe------------------------------------------
if(IsPlayerAdmin(playerid))
{
dcmd(bombon, 6, cmdtext);
dcmd(bomboff, 7, cmdtext);
}
dcmd(bombhelp, 8, cmdtext);
dcmd(bomb, 4, cmdtext);
dcmd(mine, 4, cmdtext);
dcmd(boom, 4, cmdtext);
dcmd(mined, 5, cmdtext);
dcmd(disarm, 6, cmdtext);
dcmd(demine, 6, cmdtext);
//-----------------------------[ Faire les poches ]-