• 11 Juin 2024, 11:01:59


Auteur Sujet: Problème tableau  (Lu 3063 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Problème tableau
« le: 20 Octobre 2012, 16:13:02 »
Bonjour,

J'ai un problème avec un tableau. Script du tableau dans OnPlayerCommandText :

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/v", cmdtext, true) == 0)
{
        ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vehicule", "Airplane\nHelicopter\nBoat\nBikes\nIndustrial\nOffRoad\nSportcar\nUnique", "Ok", "Annuler");
return 1;
}
return 0;
}


Et dans  OnDialogResponse :


Code: (pawn) [Sélectionner]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{

if(listitem == 0) // Airplanes
{
   ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Aiplane","At-400\Andromada\nShamal\nBeagle\nCropduster\nDodo\nSkimmer\Nevada\Stuntplane", "Ok", "Cancel");
   if(dialogid == 2) //
{
    new Float:X,Float:Y,Float:Z, vehcreated;
    GetPlayerPos(playerid,X,Y,Z); // Je récupère les positions du joueur.
    if(!response)return 1;
    if(listitem == 0) // Sa correspond au Shamal.
   {
     vehcreated = CreateVehicle(577, X,Y,Z, 0, 1, -1); // Je crée le véhicule sur la position du joueur
     PutPlayerInVehicle(playerid,vehcreated,0); // Je met le joueur dans le véhicule
   }
   return 1;
   }


Quand je compile, voilà ce qui s'affiche :

C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(234) : error 027: invalid character constant
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(234) : error 027: invalid character constant
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(242) : warning 202: number of arguments does not match definition
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(245) : warning 217: loose indentation
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(256) : error 030: compound statement not closed at the end of file (started at line 234)
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.




Des erreurs :(


Je ne comprend pas les erreurs, je ne les vois pas. A vrai dire je suis un peu perdu.  :-\

Quelqu'un peut m'expliquer le problème s'il vous plait ?


Je tiens à préciser que c'est un tableau qui permet de spawn des véhicules. Normalement sa doit marché comme ça :  je fais /v, un tableau apparait avec une liste des différentes catégorie de véhicule, si par exemple  on clique sur la catégorie Airplane, on attérie sur une autre liste avec la liste des avions, et quand on clique sur un avion (exemple : le shamal) on spawn directement dans l'avion.



Je vous remercie d'avance.


Toute réponse hors-sujet seras immédiatement signalée à l'administration. Le règlement du forum est disponible sur le lien suivant : http://www.gtaonline.fr/forums/index.php/topic,2.0.html
« Modifié: 21 Octobre 2012, 13:37:10 par JohnAnto »
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : Problème tableau
« Réponse #1 le: 20 Octobre 2012, 16:33:31 »
Perso, dans mon OnPlayerCommandText , j'ai pas le Return 1 car a ma connaissance, je ne l'es pas mis la

mais a la fin , retire le et dit moi.


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : Problème tableau
« Réponse #2 le: 20 Octobre 2012, 16:43:55 »
Perso, dans mon OnPlayerCommandText , j'ai pas le Return 1 car a ma connaissance, je ne l'es pas mis la

mais a la fin , retire le et dit moi.



J'ai retirer le return 1; comme ceci :

public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/v", cmdtext, true) == 0)
{
        ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vehicule", "Airplane\nHelicopter\nBoat\nBikes\nIndustrial\nOffRoad\nSportcar\nUnique", "Ok", "Annuler");

}
return 0;
}



Toujours les memes les erreurs
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : Problème tableau
« Réponse #3 le: 20 Octobre 2012, 17:06:34 »
:facepalm:

Je t'es pas dit de mettre Return 0 mais de retiré la ligne de Return 1 !


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : Problème tableau
« Réponse #4 le: 20 Octobre 2012, 18:10:47 »
:facepalm:

Je t'es pas dit de mettre Return 0 mais de retiré la ligne de Return 1 !



Voilà :


public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/v", cmdtext, true) == 0)
{
        ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Vehicule", "Airplane\nHelicopter\nBoat\nBikes\nIndustrial\nOffRoad\nSportcar\nUnique", "Ok", "Annuler");

}
}


Sa affiche des erreurs quand même  :


C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(233) : error 027: invalid character constant
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(233) : error 027: invalid character constant
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(241) : warning 202: number of arguments does not match definition
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(244) : warning 217: loose indentation
C:\Users\Anthony\Desktop\serveur samp\filterscripts\vehiculespawn.pwn(255) : error 030: compound statement not closed at the end of file (started at line 233)
Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.




« Modifié: 20 Octobre 2012, 18:42:39 par JohnAnto »
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : Problème tableau
« Réponse #5 le: 20 Octobre 2012, 19:07:33 »
Je te répond sous .... 12 minutes :)


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Re : Problème tableau
« Réponse #6 le: 20 Octobre 2012, 21:36:29 »
Je te répond sous .... 12 minutes :)

T'étais pas obliger de poster pour dire ça tu sais, en plus, tu n'as même pas répondu sous tes "12 minutes".

Sinon je peux pas t'aider.


Adju ♥
(-_-)



Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Problème tableau
« Réponse #7 le: 21 Octobre 2012, 13:08:24 »
on va tenter de repondre avec de vrais reponse valable

pour commencer remet ton return 1 et return 0 a leur place sa ne vient pas de la

pour continuer montre nous les lignes qui te provoque les erreures car bon j'ai pas envie de tout eplucher

EDIT j'ai regarder de plus pres et tu t'emmêle les pinceaux regarde un peu sa

Code: (pawn) [Sélectionner]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 2) //l'id du dialogie en question
{
new Float:X,Float:Y,Float:Z,Float:A, vehcreated[MAX_PLAYERS];//Attention pour eviter pas mal de probleme cette variable declare la en haut de ton script new vehcreated[MAX_PLAYERS];
GetPlayerPos(playerid,X,Y,Z); // Je récupère les positions du joueur.
GetPlayerFacingAngle(playerid,A);//tu avais zapper de prendre l'angle du joueur
if(listitem == 0) // Sa correspond au Shamal.
{
vehcreated[playerid] = CreateVehicle(577, X,Y,Z,A, 0, 1, -1); // Je crée le véhicule sur la position du joueur
PutPlayerInVehicle(playerid,vehcreated[playerid],0); // Je met le joueur dans le véhicule
}
}
return 1;
}
« Modifié: 21 Octobre 2012, 13:20:08 par cristab »
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : Problème tableau
« Réponse #8 le: 21 Octobre 2012, 13:52:20 »
on va tenter de repondre avec de vrais reponse valable

pour commencer remet ton return 1 et return 0 a leur place sa ne vient pas de la

pour continuer montre nous les lignes qui te provoque les erreures car bon j'ai pas envie de tout eplucher

EDIT j'ai regarder de plus pres et tu t'emmêle les pinceaux regarde un peu sa

Code: (pawn) [Sélectionner]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 2) //l'id du dialogie en question
{
new Float:X,Float:Y,Float:Z,Float:A, vehcreated[MAX_PLAYERS];//Attention pour eviter pas mal de probleme cette variable declare la en haut de ton script new vehcreated[MAX_PLAYERS];
GetPlayerPos(playerid,X,Y,Z); // Je récupère les positions du joueur.
GetPlayerFacingAngle(playerid,A);//tu avais zapper de prendre l'angle du joueur
if(listitem == 0) // Sa correspond au Shamal.
{
vehcreated[playerid] = CreateVehicle(577, X,Y,Z,A, 0, 1, -1); // Je crée le véhicule sur la position du joueur
PutPlayerInVehicle(playerid,vehcreated[playerid],0); // Je met le joueur dans le véhicule
}
}
return 1;
}



Alors, bonne nouvelle, quand je compile le script, aucune erreur  :biggrin: et par contre une mauvaise nouvelle, quand je suis sur le serveur et que je fais /v voilà ce qui s'affiche :

http://img15.hostingpics.net/pics/416166vehiculespawn.png


Dans la barre, que je mette le nom d'une catégorie, le nom d'un véhicule ou l'id d'un véhicule sa ne marche pas :(

Moi j'aimerais que sa fasse :  je fais /v, un tableau apparait avec une liste des différentes catégorie de véhicule, si par exemple  on clique sur la catégorie Airplane, on attérie sur une autre liste avec la liste des avions, et quand on clique sur un avion (exemple : le shamal) on spawn directement dans l'avion

Je vous remercie d'avance.

Prefer the quality is better now

Hors ligne Mams

  • *
  • Nouveau
  • Messages: 22
    • Voir le profil
Re : Problème tableau
« Réponse #9 le: 21 Octobre 2012, 14:10:37 »
Change DIALOG_STYLE_INPUT par DIALOG_STYLE_LIST.


Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : Problème tableau
« Réponse #10 le: 21 Octobre 2012, 14:35:06 »
Change DIALOG_STYLE_INPUT par DIALOG_STYLE_LIST.


Merci. Malheuresement j'ai un autre problème. Regardez : http://img15.hostingpics.net/pics/946881vehiculespawnprob.png


Je peut spawner 10 véhicules et ils ne disparraisent pas !

Comment faire ?

Je vous remercie d'avance.
Prefer the quality is better now

Hors ligne pa2m972

  • Chef de la Team FOD | Scripteur de Darkseno
  • *
  • Tueur
  • Cool ta vie, mange un Kiwi
  • Messages: 59
    • Voir le profil
    • http://libertyworldroleplay.xooit.com/index.php
Re : Problème tableau
« Réponse #11 le: 21 Octobre 2012, 14:42:06 »
Cela dépend, si ils ont bcp de vie, t dans la merde, autrement fais une Commande

/detruire


◄¤| Leader FOD Team | Criminel | C'Helper |¤►

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Problème tableau
« Réponse #12 le: 21 Octobre 2012, 15:18:03 »
Fait un tableau global avec pour index l'id du joueur, donc un truc du genre

Code: (pawn) [Sélectionner]
new gCreatedVehicle[MAX_PLAYERS];
Ensuite quand tu créer un véhicule tu stock son id dans ce tableau puis quand le joueur créé un autre véhicule tu détruit l'ancien s'il y en a eu un ;)



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

Hors ligne JohnAnto

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Re : Problème tableau
« Réponse #13 le: 21 Octobre 2012, 17:51:49 »
Fait un tableau global avec pour index l'id du joueur, donc un truc du genre

Code: (pawn) [Sélectionner]
new gCreatedVehicle[MAX_PLAYERS];
Ensuite quand tu créer un véhicule tu stock son id dans ce tableau puis quand le joueur créé un autre véhicule tu détruit l'ancien s'il y en a eu un ;)



Escusez moi, mais je n'est pas trop compris ce que vous voulez dire. Voilà mon bout de script qui permet de spawn des véhicules :

Code: (pawn) [Sélectionner]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
        if(dialogid == 2) //l'id du dialogie en question
        {
                new Float:X,Float:Y,Float:Z,Float:A, vehcreated[MAX_PLAYERS];
                GetPlayerPos(playerid,X,Y,Z); // Je récupère les positions du joueur.
                GetPlayerFacingAngle(playerid,A);
                PutPlayerInVehicle(playerid,vehcreated[playerid],0); // Je met le joueur dans le véhicule
                if(listitem == 0)
                {
                vehcreated[playerid] = CreateVehicle(577, X,Y,Z,A, 0, 1, -1); // Je crée le véhicule sur la position du joueur
                PutPlayerInVehicle(playerid,vehcreated[playerid],0); // Je met le joueur dans le véhicule
                }
        }
        return 1;
}


Ici donc, sa vas spawné un avion : l'At-400 (id 577).

J'ai juste compris qu'il fallait je mette le
Code: (pawn) [Sélectionner]
new gCreatedVehicle[MAX_PLAYERS]; au début de mon script, mais c'est tous aprés je ne c'est plus comment faire.

Je vous remercie d'avance.
« Modifié: 21 Octobre 2012, 17:57:19 par JohnAnto »
Prefer the quality is better now

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Problème tableau
« Réponse #14 le: 21 Octobre 2012, 17:54:09 »
si tu regarde bien ce que j'ai mis tu as new vehcreated[MAX_PLAYERS]; donc tu l'initialise a -1 a la connection du joueur est si pas egale a -1 tu detruit avant de creer
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici