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

Titre: kill / jail
Posté 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 !
Titre: Re : kill / jail
Posté par: Franky™ le 25 Mars 2008, 11:07:16
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
Titre: Re : kill / jail
Posté par: Bayshore le 25 Mars 2008, 17:42:20
Code: (pawn) [Sélectionner]
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
Titre: Re : kill / jail
Posté par: gen_vivien le 25 Mars 2008, 20:39:52
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.
Titre: Re : kill / jail
Posté par: antho_drakkle le 29 Mars 2008, 21:20:00
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
Titre: Re : kill / jail
Posté par: [StAfF]MaN le 30 Mars 2008, 00:21:41
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 ;)
Titre: Re : kill / jail
Posté par: gen_vivien le 31 Mars 2008, 23:36:51
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.