GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: ShaDowxx™ le 08 Avril 2012, 13:51:39

Titre: Changer les dégâts des armes.
Posté par: ShaDowxx™ le 08 Avril 2012, 13:51:39
Bonjour à tous

Je voudrais savoir comment peut-on changer les dégâts des armes, je sais que c'est possible mais je ne connait pas le code. Pouvez-vous me donner la page du wiki samp ou des bases ?

Merci à vous tous !

Cordialement, ShaDowxx™
Titre: Re : Changer les dégâts des armes.
Posté par: Yornays le 08 Avril 2012, 20:50:26
Avec http://wiki.sa-mp.com/wiki/OnPlayerTakeDamage (http://wiki.sa-mp.com/wiki/OnPlayerTakeDamage)
Titre: Re : Changer les dégâts des armes.
Posté par: dydjyz le 09 Avril 2012, 02:08:32
Utilise les Callbacks OnPlayerGiveDamage ou onplayertakedamage.
http://wiki.sa-mp.com/wiki/OnPlayerTakeDamage (http://wiki.sa-mp.com/wiki/OnPlayerTakeDamage)

Après tu mets une condition pour vérifier l'arme, par exemple
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
{
     if(GetPlayerWeapon(playerid) == 24) // Sniper si je me souvient bien.
     {
          SetPlayerhealth(damageid, 0); // damageid, c'est l'ID du joueur qui se fait tirer dessus.
     }
     return 1;
}
Voilà, bonne soirée.
Titre: Re : Changer les dégâts des armes.
Posté par: spiirou le 09 Avril 2012, 09:33:01
Codé sur le forum, je ne sais pas ce que ca vaut

#define COEFFICIENT_DEGAT 1.5

public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
{
if(issuerid != INVALID_PLAYER_ID)
{
amount = (amount*COEFFICIENT_DEGAT)-amount;
new Float:health;
GetPlayerHealth(playerid, health);
health -= amount;
SetPlayerHealth(playerid, health);
if(health <= 0.0) SendDeathMessage( issuerid, playerid, weapondid );
}
return 1;
}
Titre: Re : Changer les dégâts des armes.
Posté par: ShaDowxx™ le 09 Avril 2012, 14:08:12
Merci de votre aide ! J'ai le code qu'il me faut ! Merci à vous tous !
Titre: Re : Changer les dégâts des armes.
Posté par: spiirou le 09 Avril 2012, 14:32:47
Un peu plus de detail sur ce que tu as? J'aime connaitre la fin de l'histoire :)
Titre: Re : Changer les dégâts des armes.
Posté par: ShaDowxx™ le 09 Avril 2012, 17:18:11
#define _sniperosok_included
 
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
 {
 if(weaponid == 34) SetPlayerHealth(playerid, -0);
 if(weaponid == 33) SetPlayerHealth(playerid, -0);
 return CallLocalFunction("osok_OnPlayerTakeDamage", "iifi", playerid, issuerid, amount, weaponid);
 }

Avec un ami et il marche.