• 22 Avril 2025, 14:19:15


Auteur Sujet: Tazer  (Lu 1716 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Tazer
« le: 26 Mars 2011, 00:38:21 »
Bon salut, je viens de commencé en script, je sais créer quelque commande... La je commence a créer mon serveur, mais je voudrait savoir si vous connaisez un fliter script ou quelque chose pour créer un tazer Manuel (Comme un SDpistole quand on tire sur quelqu'un il est taze)

Merci d'avance

Hors ligne nath425

  • *
  • Tueur
  • Messages: 68
    • Voir le profil
Re : Tazer
« Réponse #1 le: 28 Mars 2011, 22:25:29 »
Dans le

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
tu y définit la touche désirée, et dans ça tu y place par exemple

if(GetPlayerWeapon(playerid) == 24) ( Là , j'ai mis l'arme DEAGLE)

et ensuite tu définis l'action de ton tazer, exemple du rendu :

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
   {
    if(newkeys == KEY_ACTION) // j'ai défini la touche CTRL
     {
      if(GetPlayerWeapon(playerid) == 24) // j'ai défini l'arme
      {
      la tu place ton code
      }
   }
   return 1;
 }

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Re : Tazer
« Réponse #2 le: 29 Mars 2011, 20:26:57 »
Je voie un peu se que sa donne...mais c'est pas sa car, il faut quand je tire dessus "ET SA LE TOUCHE", il est taze

Hors ligne dydjyz

  • *
  • Bandit
  • Messages: 278
    • Voir le profil
    • OriginalRP - SAMP
Re : Tazer
« Réponse #3 le: 29 Mars 2011, 22:27:50 »
http://www.gtaonline.fr/forums/index.php/topic,11537.0.html

Entre autre: ====>

Il te suffit de fair un IsPlayerAiming(Si le Joueur tire sur ce joueur) je vais te faire un système pour t'aider

En Haut de ton Script :
forward OnPlayerAimingOnPlayer(PlayerAiming,PlayerTouchAimming);

Dans OnPlayerKeyStatChange :
if(((oldkeys & KEY_FIRE) && !(newkeys & KEY_FIRE)) || ((newkeys & KEY_FIRE) && !(oldkeys & KEY_FIRE)) ||  (newkeys & KEY_FIRE))
{
if(GetPlayerWeapon(playerid)==0)
{
    return 1;
}
for(new i = 0; i < MAX_PLAYERS(); i++)
{
if(IsPlayerConnected(i) && playerid != i)
{
if(IsPlayerAiming(playerid, i))
{
OnPlayerAimingOnPlayer(playerid,i);
return 1;
}
}
}
}

En bas de ton script :
OnPlayerAimingOnPlayer(PlayerAiming,PlayerTouchAimming)
{
//PlayerAiming = Le Joueur qui tire
//PlayerTouchAimming = Le Joueur touché par le tire
return 1;
}

Toujour en bas de ton script(SOURCE:http://woot-is-awesome.pastebin.com/f5d45cbd7):
stock IsPlayerAiming(playerid, aimid)
{
// Not my function, can't remember who made it though.
new Float:X1, Float:Y1, Float:Z1, Float:X2, Float:Y2, Float:Z2;
GetPlayerPos(playerid, X1, Y1, Z1);
GetPlayerPos(aimid, X2, Y2, Z2);
new Float:Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
if(Distance < 100)
{
new Float:A;
GetPlayerFacingAngle(playerid, A);
X1 += (Distance * floatsin(-A, degrees));
Y1 += (Distance * floatcos(-A, degrees));
Distance = floatsqroot(floatpower(floatabs(X1-X2), 2) + floatpower(floatabs(Y1-Y2), 2));
if(Distance < 0.5)
{
    return true;
}
}
return false;
}

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Re : Tazer
« Réponse #4 le: 29 Mars 2011, 22:57:04 »
Quand je met sa, et je le remplie (ici je les pas remplie):

Code: (pawn) [Sélectionner]
if(((oldkeys & KEY_FIRE) && !(newkeys & KEY_FIRE)) || ((newkeys & KEY_FIRE) && !(oldkeys & KEY_FIRE)) ||  (newkeys & KEY_FIRE))
{
if(GetPlayerWeapon(playerid)==0)
{
    return 1;
}
for(new i = 0; i < MAX_PLAYERS(); i++)
{
if(IsPlayerConnected(i) && playerid != i)
{
if(IsPlayerAiming(playerid, i))
{
OnPlayerAimingOnPlayer(playerid,i);
return 1;
}
}
}
}


Sa me donne sa:



C:\Documents and Settings\famille\Bureau\Serveur SAMP\gamemodes\RC-RP.pwn(67708) : error 029: invalid expression, assumed zero
C:\Documents and Settings\famille\Bureau\Serveur SAMP\gamemodes\RC-RP.pwn(67708) : error 001: expected token: ")", but found ";"
C:\Documents and Settings\famille\Bureau\Serveur SAMP\gamemodes\RC-RP.pwn(67708) : error 001: expected token: ";", but found ")"
C:\Documents and Settings\famille\Bureau\Serveur SAMP\gamemodes\RC-RP.pwn(67708) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.




Je croie que j'ai oublié quelque truc :$

Merci de m'aidé

Hors ligne dydjyz

  • *
  • Bandit
  • Messages: 278
    • Voir le profil
    • OriginalRP - SAMP
Re : Tazer
« Réponse #5 le: 30 Mars 2011, 10:53:17 »
A premiere vue, il semble que tu a oublier des ;

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Re : Tazer
« Réponse #6 le: 30 Mars 2011, 14:45:10 »
la ligne ou j'ai les erreur C'est cella:


Code: (pawn) [Sélectionner]
for(new i = 0; i < MAX_PLAYERS(); i++)

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Re : Tazer
« Réponse #7 le: 30 Mars 2011, 15:19:58 »
Ni l'une ni l'autre marche les même erreur:


C:\Documents and Settings\famille\Bureau\Serveur SAMP\plugins\TEST TAZER.pwn(202) : error 017: undefined symbol "IsPlayerAiming"
C:\Documents and Settings\famille\Bureau\Serveur SAMP\plugins\TEST TAZER.pwn(204) : error 004: function "OnPlayerAimingOnPlayer" is not implemented
C:\Documents and Settings\famille\Bureau\Serveur SAMP\plugins\TEST TAZER.pwn(211) : warning 209: function "OnPlayerKeyStateChange" should return a value
C:\Documents and Settings\famille\Bureau\Serveur SAMP\plugins\TEST TAZER.pwn(211) : error 055: start of function body without function header
C:\Documents and Settings\famille\Bureau\Serveur SAMP\plugins\TEST TAZER.pwn(212) : error 010: invalid function or declaration
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

Hors ligne Vprimo

  • *
  • Nouveau
  • Messages: 11
    • Voir le profil
Re : Tazer
« Réponse #8 le: 02 Avril 2011, 20:50:03 »
UP