GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Necr0mancer le 13 Juillet 2014, 12:21:23
-
Hola !
J'ai un petit soucis avec ce système ►
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_SECONDARY_ATTACK))
{
new Float:X,Float:Y,Float:Z,Float:Distance = 5.0;
GetPlayerPos(playerid, X, Y, Z);
if(PlayerToPoint(3.0, playerid, xxxx.xxxx,xxxx.xxxx,xx.xxxx))
{
SetPlayerPos(playerid, xxxx.xxxx,xxxx.xxxx,xx.xxxx);
SetPlayerInterior(playerid, 10);
GameTextForPlayer(playerid,"~y~Ammunation", 3000, 1);
return 1;
}
else if(PlayerToPoint(5.0, playerid,xxxx.xxxx,xxxx.xxxx,xx.xxxx))
{
SetPlayerPos(playerid,xxxx.xxxx,xxxx.xxxx,xx.xxxx);
SetPlayerInterior(playerid, 0);
GameTextForPlayer(playerid, "~y~Quartier", 3000, 1);
return 1;
}
return 1;
}
Voilà, donc quand je met mes positions, et que je vais à l'endroit et que j'appuie sur " entrer " il ne rentre pas dans l'intérieur ou je le tp....
C'est un script pris sur zombotech, et sur zombotech il fonctoinne parfaitement, pour l'instant je fait avec des commandes /entrer.
Merci de m'aider
-
Salut,
http://wiki.sa-mp.com/wiki/OnPlayerKeyStateChange_FR (http://wiki.sa-mp.com/wiki/OnPlayerKeyStateChange_FR)
Bonne journée ! :wink:
-
Vérifies que la macro PRESSED(&1) est bien définie en haut de ton script. Si c'est le cas, montres-la nous. ;)
-
#define PRESSED(%0) \
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
-
Salut,
dans ma signature tu va trouver un script qui pourrait t’intéresser pour la détection de touche :)
-
if(newkeys & KEY_SECONDARY_ATTACK && !(oldkeys & KEY_SECONDARY_ATTACK ))