GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Bayshore le 19 Avril 2008, 18:13:45

Titre: [Résolu]Problème avec KillTimer
Posté par: Bayshore le 19 Avril 2008, 18:13:45
salut!

J'ai voulu faire une fonction pour freezer le véhicule du joueur mais le compilateur me renvoit une erreur à la compilation. :(

C:\DOCUME~1\DIEULO~1\MESDOC~1\www\samp\server\GAMEMO~1\mrp.pwn(2165) : error 076: syntax error in the expression, or invalid function call

Code: (pawn) [Sélectionner]
public FreezeVehicle(driverid, vehicleid, toggle)
{
if(toggle)
{
    new Float: x, Float: y, Float: z;
    GetPlayerPos(driverid, x, y, z);
    SetTimerEx("FrzVehicle", 200, true, "ifff", driverid, x, y, z);
}
else KillTimer(FrzVehicle); // ligne 2165
}

public FrzVehicle(vehicleid, Float:x, Float:y, Float:z)
{
SetVehiclePos(vehicleid, x, y, z);
}

Et au début de mon script:
Code: (pawn) [Sélectionner]
forward FreezeVehicle(driverid, vehicleid, toggle);
forward FrzVehicle(vehicleid, Float:x, Float:y, Float:z);

Si vous pourriez m'aidez... ;)

Merci d'avance!
Titre: Re : Problème avec KillTimer
Posté par: NatiVe™ le 19 Avril 2008, 18:17:39
Quel est la ligne concérner ?

NV.

Titre: Re : Problème avec KillTimer
Posté par: Bayshore le 19 Avril 2008, 18:19:12
Celle qui est commenter d'un // ligne 2165
Titre: Re : Problème avec KillTimer
Posté par: jonjon le 19 Avril 2008, 19:21:26
Tu remplace :

Code: (pawn) [Sélectionner]
SetTimerEx("FrzVehicle", 200, true, "ifff", driverid, x, y, z);
Par :

Code: (pawn) [Sélectionner]
FrzV = SetTimerEx("FrzVehicle", 200, true, "ifff", driverid, x, y, z);
Tu remplace :

Code: (pawn) [Sélectionner]
else KillTimer(FrzVehicle);
Par :

Code: (pawn) [Sélectionner]
else KillTimer(FrzV);
Et tu rajoute :

Code: (pawn) [Sélectionner]
new FrzV;
Titre: Re : Problème avec KillTimer
Posté par: Bayshore le 19 Avril 2008, 21:25:54
Re,

Ça ne marche pas jonjon, vu que fzrV est dans le if, et le killtimer dans le else. :(

Code: (pawn) [Sélectionner]
public FreezeVehicle(driverid, vehicleid, toggle)
{
if(toggle)
{
new Float: x, Float: y, Float: z; GetPlayerPos(driverid, x, y, z);
new FrzV;
FrzV = SetTimerEx("FrzVehicle", 500, true, "ifff", driverid, x, y, z); // ligne 2163
}
else KillTimer(FrzV); // ligne 2165
}

public FrzVehicle(vehicleid, Float:x, Float:y, Float:z)
{
SetVehiclePos(vehicleid, x, y, z);
}

C:\DOCUME~1\DIEULO~1\MESDOC~1\www\samp\server\GAMEMO~1\mrp.pwn(2163) : warning 204: symbol is assigned a value that is never used: "FrzV"
C:\DOCUME~1\DIEULO~1\MESDOC~1\www\samp\server\GAMEMO~1\mrp.pwn(2165) : error 017: undefined symbol "FrzV"
Titre: Re : Problème avec KillTimer
Posté par: [StAfF]MaN le 19 Avril 2008, 22:53:06
Pour que ça fonctionne tu met ton new FrzV ici :


public FreezeVehicle(driverid, vehicleid, toggle)
{
[color=red]new FrzV;[/color]
if(toggle)

{

C'est tout ;)
Titre: Re : Problème avec KillTimer
Posté par: Bayshore le 20 Avril 2008, 17:04:02
Impeccable, merci!