GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: gen_vivien le 25 Mars 2008, 10:49:59
-
Bonjour, je voudrais faire un script pour mon GF qui dit que quand un policier / militaire / FBI tue quelqu'un, ce quelqu'un va au prison. Un kill/Jail quoi :)
Je pense qu'il faudrais faire un truc genre
if(IsPlayerKill(playerid))
SendClientMessageToPayer(playerid)(0xDEEE20FF, "Vous avez été mit en prison par un Policier");
Enfin bref, je ne sais pas trop comment faire. Car dans mon mode GF quand ont tue quelqun, il ne vas pas en prison (Je croie ;D)
Merci !
-
Salut,
Oui il va en prison si le Policier/FBI/Militaire lui a mis un /su. Si le mec a des niveau de recherche il va en prison si les Policier/FBI/Militaire l'on tuer.
En plus aussi si il le tue alors qu'il a un niveau de recherche le policier recois une petite prime.
Mais si le policier na pas mis de niveau de recherche et tue le mec la le policier en question pert de l'argent
Voila Cordialement Franky Patou
-
public OnPlayerDeath
{
kTeam = GetPlayerTeam(killerid);
pTeam = GetPlayerTeam(playerid);
if(kTeam == team_flic && pTeam == team_criminel)
{
// Envoyer un prison
}
}
Peut-être des erreurs dans le code. ;)
++
ZecKo
-
Je viens de testé, j'ai /su un joueur, et il ne va pas en taule après que je l'ai tuer (je suis militaire)
Aussi, je ne peu pas mettre d'amande, sa me dit que je ne suis pas un Policier/FBI/Garde National...
Pour l'amande :
if(strcmp(cmd, "/amende", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] != 2)
if(gTeam[playerid] != 1)
if(gTeam[playerid] != 3)
{
SendClientMessage(playerid, COLOR_GREY, " Vous n'êtes pas un flic !");
return 1;
}
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vous n'êtes pas en service !");
return 1;
Je suis militaire et il me dit que je peu pas mettre d'amende.
-
J'ai eu des echos comme quoi quand d'autre agent de police tuer une personne /su sa l'envoyer en prison.
Sa bug principalement sur le leader non ? va voir si tu peux :rules
-
Enlève les points d'exclamations dans ça :
if(gTeam[playerid] != 2)
if(gTeam[playerid] != 1)
if(gTeam[playerid] != 3)
et
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
Ils servent pour dire le contraire de ce que tu veut ^^
Ici le if(gTeam[playerid] != 2)
veut dire : si le player n'est pas dans la team ID 2, donc tu vois ce n'est pas ce que tu recherche ;)
-
Non tu t'es planté je pense :
f(strcmp(cmd, "/amende", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gTeam[playerid] != 2)
if(gTeam[playerid] != 1)
if(gTeam[playerid] != 3)
{
SendClientMessage(playerid, COLOR_GREY, " Vous n'êtes pas un flic !");
return 1;
}
if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
{
SendClientMessage(playerid, COLOR_GREY, " Vous n'êtes pas en service !");
return 1;
if(gTeam[playerid] != 1) Veux dire au contraire que si tu n'est pas policier SendClientMessage(playerid, COLOR_GREY, " Vous n'êtes pas un flic !"); Sa t'envoie le message "vous n'êtes pas flic"
--> EDIT : Problème résolut ! Je me suis mit leader, et je me suis invitée moi meme et me suis donner le rang 6. Maintenant sa marche nikel.
Merci.