• 05 Juillet 2025, 06:03:14


Voir les contributions

Cette section vous permet de consulter les contributions (messages, sujets et fichiers joints) d'un utilisateur. Vous ne pourrez voir que les contributions des zones auxquelles vous avez accès.


Messages - Xx_Men_xX

Pages: [1] 2
1
Scripting SA-MP [Pawn center] / Re : Problème Y_ini
« le: 29 Mai 2014, 14:03:12 »
Merci pour les explications Gzsume !

Voilà ce que j'ai fait, par exemple:
Code: (pawn) [Sélectionner]
INI_WriteFloat(File,"X_position",PlayerInfo[playerid][pXpos]);
INI_WriteFloat(File,"Y_position",PlayerInfo[playerid][pYpos]);
INI_WriteFloat(File,"Z_position",PlayerInfo[playerid][pZpos]);

J'ai remplacé tous les espaces des noms de clés par un "_".
Et oui en effet sa marche!! Depuis hier, je me faisait chier à chercher dans tous les sens le problème, et en fait le bug été tous con, j'avait mis des espaces, et sa faisait planté Y_ini :embarrassed:

Merci à vous deux!! Au moins je le sais maintenant qu'il ne faut pas mettre d'espace dans les noms de clé avec Y_ini.

2
Scripting SA-MP [Pawn center] / Re : Re : Problème Y_ini
« le: 29 Mai 2014, 13:25:15 »
Salut, je pense pas que tu puisse mettre des espaces dans le nom des clés, essaye de mettre des underscores ('_') à la place.
C'est quoi un nom de clé ?  :tongue:

3
Scripting SA-MP [Pawn center] / Problème Y_ini
« le: 29 Mai 2014, 12:35:13 »
Bonjour à tous,

J'ai un problème, je créer un système de register/login à l'aide de ce tuto: http://forum.sa-mp.com/showthread.php?t=273088 . Il marchais bien jusqu'a présent et depuis que j'ai mis les positions X, Y, Z et l'angle A à sauvegarder lors de la déconnection, sa fait n'importe quoi, je comprend pas ce qui ne vas pas. Ce qui ce passe c'est que, les positions dans le fichier .ini sont réécrites les unes à la suite des autres, à chaque déconnexion elle "s'entasse" comme ceci:

Fichier .ini aprés plusieurs déconnexion
Code: (c) [Sélectionner]
[data]
Password = 236847831
Cash = 500
Sex = 1
Age = 20
Admin = 0
Skin = 30
InteriorID = 0
X position = -1964.857055
Y position = 139.000274
Z position = 27.694049
A angle = 38.540363
X position = -1972.422485
Y position = 138.947311
Z position = 27.687500
A angle = 52.327156
X position = 132.000000
Y position = -67.291633
Z position = 1.578125
A angle = 0.000000

Normalement il faudrait juste que ça fasse:
Code: (c) [Sélectionner]
[data]
Password = 236847831
Cash = 500
Sex = 1
Age = 20
Admin = 0
Skin = 30
InteriorID = 0
X position = -1964.857055
Y position = 139.000274
Z position = 27.694049
A angle = 38.540363

Défois je spawn au coordonnées X=0, Y=0,Z=0 sous la map dans un champs.

Voici le code:
Code: (pawn) [Sélectionner]
public OnPlayerDisconnect(playerid, reason) // Quand le joueur se déconnecte
{
    new name[MAX_PLAYER_NAME], str[MAX_STRING];
   
    GetPlayerName(playerid, name, sizeof(name));
    format(str, sizeof(str), "%s a quitté le serveur", name);
    SendClientMessageToAll(COLOR_GREY, str);
   
    if(register_complete == true)
    {
  PlayerInfo[playerid][pCash] = GetPlayerMoney(playerid);
  PlayerInfo[playerid][pSkin] = GetPlayerSkin(playerid);
  GetPlayerPos(playerid, PlayerInfo[playerid][pXpos], PlayerInfo[playerid][pYpos], PlayerInfo[playerid][pZpos]);
  GetPlayerFacingAngle(playerid, PlayerInfo[playerid][pAangle]);
  PlayerInfo[playerid][pInteriorID] = GetPlayerInterior(playerid);


  new INI:File = INI_Open(UserPath(playerid));
      INI_SetTag(File,"data");
      INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);
      INI_WriteInt(File,"Cash",PlayerInfo[playerid][pCash]);
      INI_WriteInt(File,"Sex",PlayerInfo[playerid][pSex]);
      INI_WriteInt(File,"Age",PlayerInfo[playerid][pAge]);
      INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
      INI_WriteInt(File,"Skin",PlayerInfo[playerid][pSkin]);
      INI_WriteInt(File,"InteriorID",PlayerInfo[playerid][pInteriorID]);
      INI_WriteFloat(File,"X position",PlayerInfo[playerid][pXpos]);
      INI_WriteFloat(File,"Y position",PlayerInfo[playerid][pYpos]);
      INI_WriteFloat(File,"Z position",PlayerInfo[playerid][pZpos]);
      INI_WriteFloat(File,"A angle",PlayerInfo[playerid][pAangle]);
  INI_Close(File);
     

   
    }
   
    else
    {
   
   
    }

return 1;
}
Code: (pawn) [Sélectionner]
public OnPlayerSpawn(playerid)
{
    TogglePlayerSpectating(playerid, 0);
    StopAudioStreamForPlayer(playerid);
   
    if(first_spawn == true)
    {
  SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
  SetPlayerPos(playerid,-1964.1395,138.2326,27.6940);
      SetPlayerFacingAngle(playerid,90.1103);
      SetPlayerInterior(playerid, 0);
    }
   
else
{
      SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
  SetPlayerPos(playerid, PlayerInfo[playerid][pXpos],PlayerInfo[playerid][pYpos], PlayerInfo[playerid][pZpos]);
  SetPlayerFacingAngle(playerid, PlayerInfo[playerid][pAangle]);
  SetPlayerInterior(playerid, PlayerInfo[playerid][pInteriorID]);
 
}
   
   
     


return 1;
}


Code: (pawn) [Sélectionner]
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
PlayerInfo[playerid][pCash] = 500;                     // Register
              GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
              PlayerInfo[playerid][pXpos] = 0.0;
              PlayerInfo[playerid][pYpos] = 0.0;
              PlayerInfo[playerid][pZpos] = 0.0;
             
              first_spawn = true;
              register_complete = true;
             
 
             
              new INI:File = INI_Open(UserPath(playerid));
              INI_SetTag(File,"data");
              INI_WriteInt(File,"Password",PlayerInfo[playerid][pPass]);
              INI_WriteInt(File,"Cash",PlayerInfo[playerid][pCash]);
              INI_WriteInt(File,"Sex",PlayerInfo[playerid][pSex]);
              INI_WriteInt(File,"Age",PlayerInfo[playerid][pAge]);
              INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
              INI_WriteInt(File,"Skin",PlayerInfo[playerid][pSkin]);
       
       
       
       
              INI_WriteInt(File,"InteriorID",PlayerInfo[playerid][pInteriorID]);
     
  INI_Close(File);
}

Code: (pawn) [Sélectionner]
forward LoadUser_data(playerid,name[],value[]);

public LoadUser_data(playerid,name[],value[])
{
    INI_Int("Password",PlayerInfo[playerid][pPass]);
    INI_Int("Cash",PlayerInfo[playerid][pCash]);
    INI_Int("Sex",PlayerInfo[playerid][pSex]);
    INI_Int("Age",PlayerInfo[playerid][pAge]);
    INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
    INI_Int("Skin",PlayerInfo[playerid][pSkin]);
    INI_Float("X position",PlayerInfo[playerid][pXpos]);
    INI_Float("Y position",PlayerInfo[playerid][pYpos]);
    INI_Float("Z position",PlayerInfo[playerid][pZpos]);
    INI_Float("A angle",PlayerInfo[playerid][pAangle]);
    INI_Int("InteriorID",PlayerInfo[playerid][pInteriorID]);
   

    return 1;
}

Si il manque des paranthèses ou autre dans certain bout de code, c'est normal, j'ai mis juste le nécessaire vite fait.

Merci d'avance pour votre aide.

4
Bonjour à tous,

Pour faire un système de Register/login vous me conseillez de le faire avec y_ini ou Dini ?

Merci d'avance.

5
Scripting SA-MP [Pawn center] / Re : Problème zone de gang
« le: 03 Novembre 2013, 18:18:23 »
J'ai trouvé une solution beaucoup simple : créer la zone à l'aide d'un FS.

C'est ce FS : http://forum.sa-mp.com/showthread.php?t=120586

Il est très simple à utiliser et grace à lui, ça ne bug plus.

6
Scripting SA-MP [Pawn center] / Problème zone de gang
« le: 03 Novembre 2013, 13:47:52 »
Bonjour,

J'ai créer une zone de gang(GangZone), comme expliqué ici : http://forum.sa-mp.com/showthread.php?t=344223
Et le problème c'est que sur la mini map lorsque je me déplace, la zone de gang bug, elle se déforme, on y comprend plus rien. Voici une vidéo qui illustre bien mon problème, si vous ne comprenez pas ce que je veux dire : SA-MP 0.3c bug (Gang Zones) (Found already on older versions)

Ma question est simple : Comment résoudre ce problème ?
Sur les serveurs DM auxquelles j'ai joué il n'y avait pas ce bug :)


Merci d'avance.

7
Scripting SA-MP [Pawn center] / Problème système register/login
« le: 02 Novembre 2013, 11:07:16 »
Bonjour,

J'ai un problème avec mon système de Register/Login

Je veux que lorsque l'on entre 4 fois un mot de passe incorrect, le joueur soit kické, donc j'ai fais ça :

Code : http://pastebin.com/0NZf6iy8


Le problème c'est que In Game, si je rentre un mot de passe incorrect sa me kick à la 1ère tentative alors que normalement, j'ai le droit à 4 tentatives ?

Je ne vois pas ce qui vas pas dans mon code.

Pouvez-vous m'aider SVP ?

Merci d'avance.

8
Coucou,

Est-ce qu'il y a quelqu'un qui c'est comment faire un truc du genre. Je tape /checkpoint, sa créer un checkpoint a un certain endroit, puis quand je vais dedans sa créer encore un nouveau checkpoint à un autre endroit. J'avait penser à faire ça dans :
Code: (pawn) [Sélectionner]
public OnPlayerEnterCheckpoint(playerid)
{
 
   return 1;
}
Mais le problème c'est que c'est "universel" c'est-à-dire que sa feras ça sur TOUS les checkpoints, TOUTE les commandes qui auront un SetPlayerCheckpoint feront pareille donc c'est embettant. J'ai trouvé la fonction :
Code: (pawn) [Sélectionner]
IsPlayerInCheckpoint()mais elle ne fais pas ce que je souhaite faire.
Là j'ai fais ça :
Code: (pawn) [Sélectionner]
CMD:checkpoint(playerid, params[])
{
   new checkpoint1;
   checkpoint1 = SetPlayerCheckpoint(playerid, 2045.3282,-2494.0386,14.4701, 10); //Je créer un premier checkpoint
   //Par là j'aimerais, faire que, lorsque le joueur arrive dans le checkpoint1, sa le désactive puis sa active un nouveau checkpoint mais ailleurs.
 
  return 1;

}

Pourriez-vous m'aider s'il vous plait ?

Je vous remercie d'avance pour votre aide.

9
Salut :)

Tu n'utilises tout simplement pas la bonne fonction :

GetPlayerVehicleID(playerid) -> store l'id du véhicule et non le modelid

GetPlayerVehicleModel(vehicleid /*ou GetPlayerVehicleID(playerid)*/) -> envoie le modelid correspondant à l'id en params

A+, Sam.
:medieval_sword2:
Coucou,

J'ai trouvé comment résoudre mon problème, tu m'a mis sur la bonne piste. La fonction
Code: (pawn) [Sélectionner]
GetPlayerVehicleModel()N'existe pas :) Tu a surement confondue avec :
Code: (pawn) [Sélectionner]
GetVehicleModel()
Donc voilà la solution :
Code: (pawn) [Sélectionner]
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(GetVehicleModel(vehicleid) == 402)  //Si le modèle du véhicule est égale à 402. Il falait juste récupéré le modèle du véhicule et non l'ID, avec la fonction GetVehicleModel()
{

           SendClientMessage(playerid, 0x0000FFFF, "Vous etes entré dans une Buffalo");  //On affiche ce message

        }

return 1;
}

10
Bonsoir,

Alors, j'ai un petit soucis. Je voulait que lorsqu'un joueur entre dans un véhicule, un message s'affiche, donc j'ai fais ceci :
Code: (pawn) [Sélectionner]
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)  //Quand le joueur entre dans un véhicule
{
        vehicleid = GetPlayerVehicleID(playerid);  //Je récupère l'ID du véhicule
        if(vehicleid == 402) //Si l'ID du véhicule est égal à 402(Buffalo)
        {
           SendClientMessage(playerid, JAUNE, "Vous etes entré dans une Buffalo");  //J'affiche ce message
        }
return 1;
}
Conclusion, rien ne s'affiche quand je rentre dans une Buffalo. Alors j'ai essayé un autre truc :
Code: (pawn) [Sélectionner]
public OnPlayerStateChange(playerid, newstate, oldstate)
{
   
    if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)   //Quand le joueur est dans un véhicule en conducteur
    {
 
  if(GetPlayerVehicleID(playerid) == 402)    //Je récupère l'ID du véhicule, et si, celle-ci est égal à 402
  {
SendClientMessage(playerid, JAUNE, "Vous etes entrée dans une Buffalo");  //J'affiche ce message

  }
   
    }
return 1;
}
Sa ne marche toujours pas, ensuite j'ai essayé avec newstate == PLAYER_STATE_ENTER_VEHICLE_DRIVER et sa ne marche pas non plus. Je ne sais ce qui vas pas, j'ai du oublier un truc, mais je ne sais pas quoi.
Quelqu'un a t-il une idée ?

Je vous remercie d'avance pour votre aide.

11
Moi j'ai ça, mais c'est peut du au fait que je n'est pas beaucoup de chose sur mon serveur ?
http://img4.hostingpics.net/pics/398571samp0001.png

12
Donne nous plutôt les resultat de ton speedTest :
http://www.speedtest.net/
Alors, j'ai fais le test :
Ping : 81 ms (sa varie au alentour de 77-82 ms, j'ai refais un autre test)
Débit descendant:  6,96 Mbps
Débit montant : 0.84 Mbps

13
Mon PC a 4Go de mémoire vive et ma connexion internet est relativement rapide  :lipsrsealed:

14
Bonjour,

Voilà, j'ai une question, j'ai un PC que je ne me sert pratiquement jamais, il est de 2010, et j'aimerais qu'il serve de serveur. Je ne sais pas combien de joueur connecté simultanément il vas pouvoir géré ce PC :)) Vous avez une idée ? Je ne m'y connait pas trop donc voilà.

Désolé si cette question est un peu bete.
Merci d'avance.

15
Le timer :
Code: (pawn) [Sélectionner]
public MonTimer(playerid)
{
   new Text:MonTD;
   TextDrawHideForPlayer(playerid, MonTD);

}

forward MonTimer(playerid);

Et enfin, dans ma commande :
Code: (pawn) [Sélectionner]
CMD:coucou(playerid, params[])
{
  TextDrawShowForPlayer(playerid, Textdraw1);
  SetTimerEx("MonTimer", 5000, false, "i", playerid);


  return 1;

}

Si tu as exactement fait comme ça, tu utilises deux noms de Textdraw différents  :smile:
PS: ton forward doit être avant le public  :bye:

EDIT: Je viens de voir que tu as créé un nouveau textdraw à l'endroit où tu dois en fait l'effacer..

Fais comme ça:

Code: (pawn) [Sélectionner]
CMD:coucou(playerid, params[])
{
   TextDrawHideForPlayer(playerid, Textdraw1);
   return 1;
}
Oui, j'ai corrigé ce problème sa marche parfaitement maintenant :)
Pour ceux qui voudrait créer des TextDraw sans trop ce prendre la tete vous pouvez aller sur ce site, que je trouve très bien  :smile: : http://bsndesign.webs.com/tde.htm

Pages: [1] 2