GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: [StAfF]MaN le 30 Janvier 2008, 17:49:42

Titre: Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 30 Janvier 2008, 17:49:42
salut ^^ Malgré un nom de sujet un peu "foulesmotsn'importecomment" mon problème est très simple, mais je ne voi pas comment le résoudre...

Voila j'ais modifier des commandes pour les autorisent que pour les admins, aucunes erreurs, certaines fonctionnent mais il y en a deux qui ne veulent pas fonctionner, la "/god" et la "/rep"


la commande "/rep" :

}
else if(strcmp(cmdtext,"/rep", true)==0){
    if(IsPlayerAdmin(playerid) == 1){
    SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
} else {
    if(IsPlayerAdmin(playerid) == 0){
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
}
}
}

la "/god" :

}
    else if(strcmp(cmdtext,"/god", true)==0){
    if(IsPlayerAdmin(playerid) == 1){
    SetPlayerHealth(playerid, 10000);
         } else {
    if(IsPlayerAdmin(playerid) == 0){
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
}
}

Voila ^^ Je ne sais pas pourquoi elles ne veulent pas fonctionner...

Sinon autre petite question ^^

Comment on fait pour que le player soit dans un véhicule, parce que putPlayerInVéhicle ne veut pas fonctionner non plus...

J'ais mis ça :

}
    else if(strcmp(cmdtext,"/rc6", true)==0){
new Float:X,Float:Y,Float:Z,Float:Angle;
    if(IsPlayerAdmin(playerid) == 1){
    if(!IsPlayerInAnyVehicle(playerid)){
    GetPlayerVehicleID(594);
    GetPlayerFacingAngle(playerid,Angle);
    GetPlayerPos(playerid,X,Y,Z);
    CreateVehicle(594,X+5,Y+8,Z,Angle,10,-10,50000);
    PutPlayerInVehicle(playerid, 594, 0);
    SetVehicleVirtualWorld(594,GetPlayerVirtualWorld(playerid));
    SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z);
} else {
    if(IsPlayerAdmin(playerid) == 0){
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
}
}

ça fait spawner un pot de fleure RC devant le joueur :p Mais que si il est admin avec le /rcon moi je voudrais que je player soit directement mis dedans ^^

Voila ++ et merci de vos réponses ;)
Titre: Re : Commandes marchent plus après modif script
Posté par: triton le 30 Janvier 2008, 18:20:59
Si tu mets un else(sinon)ce n'est pas la peine de mettre  if(IsPlayerAdmin(playerid) == 0)
else if(strcmp(cmdtext,"/rep", true)==0){
    if(IsPlayerAdmin(playerid) == 1){
    SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
    } else {
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
    }
    return 1;}

++
Titre: Re : Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 30 Janvier 2008, 18:25:55
Je sais mais sa ne change rien, alors je le laisse...
Titre: Re : Commandes marchent plus après modif script
Posté par: rivoal29 le 30 Janvier 2008, 19:22:33
Comment on fait pour que le player soit dans un véhicule, parce que putPlayerInVéhicle ne veut pas fonctionner non plus...

J'ais mis ça :

}
    else if(strcmp(cmdtext,"/rc6", true)==0){
new Float:X,Float:Y,Float:Z,Float:Angle;
    if(IsPlayerAdmin(playerid) == 1){
    if(!IsPlayerInAnyVehicle(playerid)){
    GetPlayerVehicleID(594);
    GetPlayerFacingAngle(playerid,Angle);
    GetPlayerPos(playerid,X,Y,Z);
    CreateVehicle(594,X+5,Y+8,Z,Angle,10,-10,50000);
    PutPlayerInVehicle(playerid, 594, 0);
    SetVehicleVirtualWorld(594,GetPlayerVirtualWorld(playerid));
    SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z);
} else {
    if(IsPlayerAdmin(playerid) == 0){
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
}
}

ça fait spawner un pot de fleure RC devant le joueur :p Mais que si il est admin avec le /rcon moi je voudrais que je player soit directement mis dedans ^^

Voila ++ et merci de vos réponses ;)

Pour sa je pe te dire :


                new carid
                new Float:x,
Float:y,
Float:z,
Float:a;

GetPlayerPos(playerid, x, y, z);
GetPlayerFacingAngle(playerid, a);
carid = CreateVehicle(444, x, y, z + 2.0, a + 90.0, 0, 3, 50000);
PutPlayerInVehicle(playerid, carid, 0);

Aprés tu rajoute ta commande :)  :dling
Titre: Re : Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 30 Janvier 2008, 19:25:49
ok je vais tester ^^
Titre: Re : Re : Commandes marchent plus après modif script
Posté par: ApocKalipsS le 30 Janvier 2008, 20:04:38
else if(strcmp(cmdtext,"/rep", true)==0){
    if(IsPlayerAdmin(playerid) == 1){
    SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
    } else {
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
    }
    return 1;}

++

Je pense qu'il faut mettre un
if IsPlayerInAnyVehicle
{
Titre: Re : Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 30 Janvier 2008, 20:57:29
Heu j'ais mis ça

}
else if(strcmp(cmdtext,"/rep", true)==0){
if(IsPlayerAdmin(playerid) == 1){
    >>>>IsPlayerInAnyVehicle(playerid);{<<<<<
    SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
    } else {
    if(IsPlayerAdmin(playerid) == 0){
    GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
    SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
}
}
}
}
 
Mais ça me fait une erreur :

C:\Documents and Settings\*******\Bureau\sa-mp 2.2 r2\gamemodes\truk.pwn(2225) : error 029: invalid expression, assumed zero
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


1 Error.

j'ais oublié quoi ?? pourquoi il me dit que l'expression n'est pas valide ??


Edit ; c'est bon j'ais trouvé fallait mettre if(IsPlaterInAnyVehicle(playerid)){}, aucune erreurs mais la commande ne fonctionne toujours pas.... et /god non plus...
Titre: Re : Commandes marchent plus après modif script
Posté par: Syg le 31 Janvier 2008, 15:51:51
Tes commandes /rep et /god fonctionnaient, il manquait juste le return 1; à la fin. Et comme le return 1; manquait, le serveur affichait "Unknown command" mais il executait quand même le SetVehicleHealth.

Tiens :
else if(strcmp(cmdtext,"/rep", true)==0)
{
if(IsPlayerAdmin(playerid) == 1)
{
if (IsPlayerInAnyVehicle(playerid))
{
SetVehicleHealth(GetPlayerVehicleID(playerid),1000.0);
}
else
{
GameTextForPlayer(playerid,"~r~Tu n'est pas dans un vehicule !!",5000,6);
}
}
else
{
GameTextForPlayer(playerid,"~r~Tu n'est pas admin !!T'es en prison pour 10 secondes",5000,6);
SetPlayerInterior(playerid,0);
SetPlayerPos(playerid,153.8815,-1952.3756,10.7188);
SetTimerEx("SortiePrison", 10000, 0, "i", playerid);
}
return 1;
}

++
Syg
Titre: Re : Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 01 Février 2008, 00:41:10
ça fonctionne toujours pas ...  :-X

y a un blème quelque part mais où ... ???

Merci quand même syg  :P
Titre: Re : Commandes marchent plus après modif script
Posté par: Syg le 01 Février 2008, 01:03:00
Elle marche très bien chez moi, l'erreur n'est pas dans cette commande mais avant.

Mets ta callback OnPlayerCommandText dans le pastebin (http://pastebin.gtaonline.fr/pastebin.php).

++
Syg
Titre: Re : Commandes marchent plus après modif script
Posté par: [StAfF]MaN le 01 Février 2008, 19:02:10
voila ^^   



         http://pastebin.gtaonline.fr/pastebin.php?show=323 (http://pastebin.gtaonline.fr/pastebin.php?show=323)