1
Scripting SA-MP [Pawn center] / Re : Gros probleme de jeux qui plante
« le: 15 Septembre 2012, 23:16:44 »
Salut, GTA Sa fonctionne parfaitement ?
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.
if (strcmp(cmd, "/registrer", true) ==0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Comptes/%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "Ce Pseudo est déjà pris, veuillez en choisir un autre.");
fclose(hFile);
return 1;
}
new motdepass[64];
tmp = strtok(cmdtext, idx);
strmid(motdepass, tmp, 0, strlen(cmdtext), 255);
OnPlayerRegister(playerid,motdepass);
}
return 1;
}
if(dialogid == Register)
{
if(response)
{
new regis[256]
format(regis, 256, "/registrer %s", inputtext);
return OnPlayerCommandText(playerid, regis);
}
else
{
log[playerid] += 1;
if(log[playerid] == 3) { return 1; }
else { Entry(playerid); }
}
}
#include <a_samp>
#define COLOR_WHITE 0xFFFFFFAA
new sointemps;
forward recuptemps(playerid);
forward recuptemps2(playerid);
forward recuptemps3(playerid);
forward recuptemps4(playerid);
forward Animsoin(playerid);
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Script Activer");
print("--------------------------------------\n");
sointemps = SetTimer("Animsoin", 10, 1);
return 1;
}
public Animsoin(playerid)
{
new Float:health;
if(IsPlayerConnected(playerid))
{
if(health <= 20)
{
ApplyAnimation (playerid,"ped ", "KO_skid_front", 4.0, 1, 0, 0, 0, 0);
SetTimerEx("recuptemps", 10000, false, "i", playerid);
TogglePlayerControllable(playerid, 0);
}
}
return 1;
}
public recuptemps(playerid)
{SetPlayerHealth(playerid,40);SetTimerEx("recuptemps2", 10000, false, "i", playerid);}
public recuptemps2(playerid)
{SetPlayerHealth(playerid,60);SetTimerEx("recuptemps3", 10000, false, "i", playerid);}
public recuptemps3(playerid)
{SetPlayerHealth(playerid,80);SetTimerEx("recuptemps4", 10000, false, "i", playerid);}
public recuptemps4(playerid)
{SetPlayerHealth(playerid,100); TogglePlayerControllable(playerid, 1); SendClientMessage(playerid, COLOR_WHITE, "Vous avez récuper vos vies");}
public OnFilterScriptExit()
{
print("\n--------------------------------------");
print(" Script Desactiver");
print("--------------------------------------\n");
KillTimer(sointemps);
return 1;
}
for(new i=0; i<MAX_PLAYERS; i++)
new nomjoueur[MAX_PLAYER_NAME]; // Nom du Joueur
new Text3D:vehicle3Dtext;
new carkey = PlayerInfo[i][pPcarkey]; // voiture numero 1 du joueur (test)
new plaque = CarInfo[carkey][cPlaque]; // 2 chiffres
new Float:x,Float:y,Float:z;
GetVehiclePos(carkey, x, y, z);
new string[7]; // 3 chiffre id de la voiture 2 chiffre plaque 3 lettre du nom du joueur
format(string,sizeof(string), "%d%d%s", GetPlayerVehicleID(i), plaque,nomjoueur);
vehicle3Dtext = Create3DTextLabel(string, 0xBD0000FF, x, y, z, 50.0, 0, 1 );
Attach3DTextLabelToVehicle( vehicle3Dtext, carkey2, 0.0, 0.0, 2.0);
ShowPlayerDialog(playerid, 7, DIALOG_STYLE_LIST, "Choississez le vehicule a immatriculer"," %s \n %s \n %s","Ok","Quitter",CarInfo[carkey][cDescription],CarInfo[carkey2][cDescription],CarInfo[carkey3][cDescription]);
new Float:x,Float:y,Float:z;
new carid;
new carkey2 = PlayerInfo[playerid][pPcarkey2];
new PlayerVehicleModelID = GetVehicleModel(carkey2);
if( PlayerInfo[playerid][pPcarkey2]) { carid = PlayerInfo[playerid][pPcarkey2]; }
else { return 1; }
GetVehiclePos(carid, x, y, z);
SetPlayerCheckpoint(playerid, x, y, z, 5);
TogglePlayerControllable(playerid,1);// on debloque
GameTextForPlayer(playerid,"Vous avez localiser le vehicule 3.", 10000, 3);
SendClientMessage(playerid, COLOR_LIGHTRED, "Votre %s est marquer sur votre gps (en rouge).",PlayerVehicle[PlayerVehicleModelID]);// confirme la commande
if(PassageCode[playerid] > 0)
{
if (PassageCode[playerid]== 1)
{
new idx;
tmp = strtok(text, idx);
if ((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[playerid] = 0;
return 0;
}
else if ((strcmp("2", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("2")))
{
SendClientMessage(playerid, 0xFF0000F, "Bonne réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Félicitaions, vous venez de répondre à la 1ère Question.");
PassageCode[playerid] = 2;
SendClientMessage(playerid, COLOR_YELLOW2, "2ème Question:");
SendClientMessage(playerid, COLOR_GREEN, "==============================================");
SendClientMessage(playerid, COLOR_LIGHTRED, "On roûle sur quelle côté de la route ?");
SendClientMessage(playerid, COLOR_LIGHTRED, "1- Droite");
SendClientMessage(playerid, COLOR_LIGHTRED, "2- Droite ou Gauche");
SendClientMessage(playerid, COLOR_LIGHTRED, "3- Gauche");
SendClientMessage(playerid, COLOR_GREEN, "==============================================");
SendClientMessage(playerid, COLOR_YELLOW2, "Répondez en entrant le numero de la réponse!");
return 0;
}
else if ((strcmp("3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("3")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[playerid] = 0;
return 0;
}
return 0;
}
else if (PassageCode[playerid]==2)
{
new idx;
tmp = strtok(text, idx);
if ((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))
{
SendClientMessage(playerid, 0xFF0000F, "Bonne réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Félicitaions, vous venez de repondre à la 2ème Question.");
PassageCode[playerid] = 3;
SendClientMessage(playerid, COLOR_LIGHTRED, "3ème Question:");
SendClientMessage(playerid, COLOR_GREEN, "==============================================");
SendClientMessage(playerid, COLOR_YELLOW2, "Que signifie les deux ligne blanche situer aux intersection de la route.");
SendClientMessage(playerid, COLOR_LIGHTRED, "1- Se se sont les lignes blanches du peintre");
SendClientMessage(playerid, COLOR_LIGHTRED, "2- Elles servent a rien");
SendClientMessage(playerid, COLOR_LIGHTRED, "3- Se sont des stops");
SendClientMessage(playerid, COLOR_GREEN, "==============================================");
SendClientMessage(playerid, COLOR_YELLOW2, "Répondez en entrant le numero de la réponse!");
return 0;
}
else if ((strcmp("2", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("2")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[playerid] = 0;
return 0;
}
else if ((strcmp("3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("3")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[playerid] = 0;
return 0;
}
return 0;
}
else if (PassageCode[playerid]==3)
{
new idx;
tmp = strtok(text, idx);
if ((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[playerid] = 0;
return 0;
}
else if ((strcmp("2", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("2")))
{
SendClientMessage(playerid, 0xFF0000FF, "Mauvaise réponse.");
SendClientMessage(playerid, COLOR_LIGHTRED, "Vous venez de loupé votre permis.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~r~Permis Non Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
TakingLesson[giveplayerid] = 0;
return 0;
}
else if ((strcmp("3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("3")))
{
SendClientMessage(playerid, 0xFF0000F, "Bonne réponse.");
SendClientMessage(playerid, COLOR_BLUE, "Félicitaions, vous venez d'obtenir votre permis de conduire.");
SetPlayerPos(playerid, 1499.3594,1306.5313,1093.2891);
GameTextForPlayer(playerid, "~b~Permis Obtenu",5000,1);
SetPlayerInterior(playerid,3);
TogglePlayerControllable(playerid, 1);
PlayerInfo[playerid][pCarLic] = 1;
TakingLesson[playerid] = 0;
return 0;
}
}
return 0;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
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++;
}
giveplayerid = ReturnUser(tmp);
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "[Utilisation:] /kick [playerid/Prénom_Nom] [raison]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s a été kické par %s, raison: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
format(string, sizeof(string), "AdmCmd: %s a été kické par %s, raison: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
Kick(giveplayerid);
return 1;
}
}
else
{
format(string, sizeof(string), " %d n'est pas un joueur actif.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
if(strcmp(cmd,"/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "[Utilisation:] /ban [playerid/Prénom_Nom] [raison]");
return 1;
}