• 04 Juin 2026, 18:02:55


Auteur Sujet: Systeme de péage  (Lu 3660 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Systeme de péage
« le: 21 Novembre 2011, 00:33:45 »
Bonjour,


J'ai trouvé un code sur un forum et j'ai essayer de le modifier et compléter avec mes propres informations! Cependant quand je fais à l'endroit ou il devrait être, il ne l'est pas! Mais le /peage lui m'enleve de l'argent!


Voici le code:#include <a_samp>
#include <core>
#include <float>
#include <float>
//#include <SimStream.inc>
forward timer();
new peage;
#define COLOR_YELLOW                                                          0xF2FB25FF
#define CreateStreamObject CreateObject



public OnGameModeInit()


{
peage = CreateObject(968, 52.200000762939, -1527, 5.6999998092651, 1.9881896972656, 90.0000, 261.99621582031);

}

public OnPlayerCommandText(playerid, cmdtext[])
{

if (strcmp(cmdtext, "/peage", true)==0)

{

GivePlayerMoney(playerid, -25);
MoveObject(peage, 52.200000762939, -1522.3000488281, 5.6999998092651, 3.5);//On bouge l'objet

SetTimer("timer", 7000, 0);
}

SendClientMessage(playerid, COLOR_YELLOW,"Fermeture dans 7 secondes");//On averti
}
public timer()

{

     MoveObject (peage, 52.200000762939, -1527, 5.6999998092651, 2.5);//retour
     
     return 1;

}


Si vous trouvez le problème se serait un grand soulagement pour moi :p ;)


Merci :)

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Systeme de péage
« Réponse #1 le: 21 Novembre 2011, 16:37:27 »
Pour bien commencer, tu inclut deux fois la librarie float.
Ensuite, la librairie core et float sont déjà inclut dans la librairie a_samp.


#define CreateStreamObject CreateObject
La fonction CreateStreamObject n'existe manifestement pas car tu n'utilise pas de streamer, retire donc cette ligne et le problème de la position de l'objet devrait être réglé !

Pour finir, tu ne fait aucun test de position pour savoir si le joueur est près du péage, il est donc normal qu'il puisse ouvrir le péage de n'importe quelle position.

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Re : Systeme de péage
« Réponse #2 le: 21 Novembre 2011, 18:40:54 »
Oui la position ou le joueur doit etre je les enlever pour me faciliter la tache et essayer de faire sans, je vais la remettre! Merci pour ta réponse je vais tester :p :)


EDIT: maintenant j'ai des erreurs voici mon code: #include <a_samp>
forward timer();
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
new peage;
#define COLOR_YELLOW                                                          0xF2FB25FF




public OnGameModeInit()


{

peage = CreateObject(968, 52.200000762939, -1527, 5.6999998092651, 1.9881896972656, 90.0000, 261.99621582031);

}

public OnPlayerCommandText(playerid, cmdtext[])
{

if (strcmp(cmdtext, "/peage", true)==0)
}

else if(PlayerToPoint(6, playerID, 55.299999237061, -1532.1999511719, 5.3000001907349))//6 est la taille de la zone

GivePlayerMoney(playerid, -25);
MoveObject(peage, 52.200000762939, -1522.3000488281, 5.6999998092651, 3.5);//On bouge l'objet
SetTimer("timer, 7000, 0);//On active le Timer
}

SendClientMessage(playerid, COLOR_YELLOW,"Fermeture dans 7 secondes");//On averti
}
public timer()

{

     MoveObject (peage, 52.200000762939, -1527, 5.6999998092651, 2.5);//retour
     
     return 1;

}










et voici mes erreurs:


F:\Rockstar Games\Gta San Andreas\filterscripts\CameraFS.pwn(23) : error 029: invalid expression, assumed zero
F:\Rockstar Games\Gta San Andreas\filterscripts\CameraFS.pwn(23 -- 25) : warning 215: expression has no effect
F:\Rockstar Games\Gta San Andreas\filterscripts\CameraFS.pwn(25) : error 001: expected token: ";", but found "else"
F:\Rockstar Games\Gta San Andreas\filterscripts\CameraFS.pwn(25) : error 004: function "PlayerToPoint" is not implemented
F:\Rockstar Games\Gta San Andreas\filterscripts\CameraFS.pwn(25) : 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 c'est je suis un débutant ^^









« Modifié: 21 Novembre 2011, 19:07:07 par jeje29140 »

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Systeme de péage
« Réponse #3 le: 21 Novembre 2011, 19:22:58 »
J'ai indenté ton code, à toi de trouver tes erreurs.

#include <a_samp>

#define COLOR_YELLOW 0xF2FB25FF

forward timer();
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);

new peage;

public OnGameModeInit()
{
peage = CreateObject(968, 52.200000762939, -1527, 5.6999998092651, 1.9881896972656, 90.0000, 261.99621582031);
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/peage", true) == 0)
} // Erreur
else if(PlayerToPoint(6, playerID, 55.299999237061, -1532.1999511719, 5.3000001907349))
GivePlayerMoney(playerid, -25);

MoveObject(peage, 52.200000762939, -1522.3000488281, 5.6999998092651, 3.5);
SetTimer("timer, 7000, 0);
}

SendClientMessage(playerid, COLOR_YELLOW, "Fermeture dans 7 secondes");
}

public timer()
{
MoveObject (peage, 52.200000762939, -1527, 5.6999998092651, 2.5);

return 1;
}

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Re : Systeme de péage
« Réponse #4 le: 21 Novembre 2011, 19:39:39 »
Je c'est qu'il manque juste qu'un petit symbole ou un petit mot mais je ne le trouve pas ^^

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Systeme de péage
« Réponse #5 le: 21 Novembre 2011, 20:20:28 »
#include <a_samp>

#define COLOR_YELLOW 0xF2FB25FF

forward timer();
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);

new peage;

public OnGameModeInit()
{
peage = CreateObject(968, 52.200000762939, -1527, 5.6999998092651, 1.9881896972656, 90.0000, 261.99621582031);
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/peage", true) == 0)
{
if(PlayerToPoint(6, playerid, 55.299999237061, -1532.1999511719, 5.3000001907349))
{
GivePlayerMoney(playerid, -25);
MoveObject(peage, 52.200000762939, -1522.3000488281, 5.6999998092651, 3.5);
SetTimer("timer", 7000, 0);
SendClientMessage(playerid, COLOR_YELLOW, "Fermeture dans 7 secondes");
}
}
}

public timer()
{
MoveObject (peage, 52.200000762939, -1527, 5.6999998092651, 2.5);

return 1;
}

Voilà le partiellement code corrigé.

GivePlayerMoney(playerid, -25);
Ceci n'aura pas l'effet que tu attends, regarde le Wiki pour savoir pourquoi !
« Modifié: 21 Novembre 2011, 20:23:12 par Xartrick »

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Re : Systeme de péage
« Réponse #6 le: 21 Novembre 2011, 20:31:17 »
pk pas l'effet que j'attends sa me retire 25$ c'est ce que je veux non?

sinon le code il y a une erreur: error 004: function "PlayerToPoint" is not implemented


Pourtant il y a le forward!

Hors ligne mehdi-jumper

  • *
  • Bandit
  • Messages: 311
    • Voir le profil
Re : Systeme de péage
« Réponse #7 le: 21 Novembre 2011, 20:35:11 »
L'erreur est ici: if (strcmp(cmdtext, "/peage", true)==0)
}

else if(PlayerToPoint(6, playerID, 55.299999237061, -1532.1999511719, 5.3000001907349))//6 est la taille de la zone

Utilise IsPlayerInRangeOfPoint c'est mieux je trouve.

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Re : Systeme de péage
« Réponse #8 le: 21 Novembre 2011, 21:01:04 »
La je ne comprends vraiement plus rien ^^

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Systeme de péage
« Réponse #9 le: 21 Novembre 2011, 21:34:52 »
C'est que tu ne sais pas programmé, merci de passer à autre chose ou alors, tu apprends, mais tu ne grappille pas des codes.

Bonne soirée.

Hors ligne jeje29140

  • *
  • Tueur
  • Messages: 67
    • Voir le profil
Re : Systeme de péage
« Réponse #10 le: 21 Novembre 2011, 21:41:43 »
Mais c'est bon c'est comem ca que l'on découvre et j'ai scripter plein de choses mais celui la m'embete et il n'y à pas de bon tuto!!!!!!

Hors ligne mehdi-jumper

  • *
  • Bandit
  • Messages: 311
    • Voir le profil
Re : Systeme de péage
« Réponse #11 le: 21 Novembre 2011, 22:08:57 »
Ajoute mon skype, je t'aiderais: james_jeffrey1.

Voici comment cela doit etre:
 if (strcmp(cmdtext, "/peage", true)==0)
{

 if(IsPlayerInRangeOfPoint(6, playerid, 55.299999237061, -1532.1999511719, 5.3000001907349))
{

Double post
Dsl

Dsl comme ceci :
 if(IsPlayerInRangeOfPoint( playerid,6, 55.299999237061, -1532.1999511719, 5.3000001907349))

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Systeme de péage
« Réponse #12 le: 22 Novembre 2011, 08:05:13 »
Arrêtes les doubles post mehdi!



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne mehdi-jumper

  • *
  • Bandit
  • Messages: 311
    • Voir le profil
Re : Systeme de péage
« Réponse #13 le: 22 Novembre 2011, 16:40:20 »
Moi c'est pas mehdi, c'est mehdi-jumper^^
Je vois pas pourquoi tu met un avertissement pour sa vu que le forum fusionne automatiquement ton deuxieme poste avec le premier, alors sa fait comme si ce n'etait plus qu'un.

Dsl du HS


S mp moi si tu veux me dire quelque chose

Hors ligne Xartrick

  • *
  • C & Pawn Programmer
  • Messages: 1391
    • Voir le profil
    • Xartrick's Area
Re : Systeme de péage
« Réponse #14 le: 22 Novembre 2011, 17:23:44 »
Tu ose dire que tu sais programmé mais tu pousse un cri quand il n'y à pas de tutoriel qui exécute exactement tes envies ?
Pour moi, tu ne sais pas programmer, et si tu continu dans cet esprit, tu ne saura jamais.