• 28 Mars 2024, 17:30:30


Auteur Sujet: restaurer ped model après le service.  (Lu 5980 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne equipier_sas

  • *
  • Nouveau
  • Messages: 14
    • Voir le profil
restaurer ped model après le service.
« le: 17 Août 2013, 12:34:46 »
Salut a tous j'espère que vous saurez me venir en aide.

Je travaille actuellement sur un script de faction SWAT (je n'ai pas encore instauré les factions je ne sais pas faire, et les topics présents n'ont pas su résoudre mes problèmes ^^)
et j'aimerais que quand le joueur quitte son service, il récupère son ped model ou ses vêtements d'avant le service...

Je bloque complètement, voilà ce que j'ai fais pour le moment :

function onPlayerCommand(playerid, command)
{

local cmd = split(command, " ");

if(cmd[0] == "/service")
    {
        local pos = getPlayerCoordinates(playerid);
        local rayon = 3;
        if(getDistanceBetweenPoints3D(93.514893, 1212.680786, 14.737936,pos[0],pos[1],pos[2]) <= 3)// comico3
        {
            setPlayerModel(playerid, 190);
            givePlayerWeapon(playerid, 3, 1); // Couteau
            givePlayerWeapon(playerid, 7, 200); // Pistolet
            givePlayerWeapon(playerid, 4, 7); // Grenades
            givePlayerWeapon(playerid, 15, 700); // M4
            sendPlayerMessage(playerid, "Tu es en service", Green);
            return 1;
        }   
        else
        {
            sendPlayerMessage(playerid, "Tu n'es pas au vestiaire", Red);
        }
        return 1;
    }
   
   
    if(cmd[0] == "/servicestop")
    {
        local pos = getPlayerCoordinates(playerid);
        local rayon = 3;
        if(getDistanceBetweenPoints3D(93.514893, 1212.680786, 14.737936,pos[0],pos[1],pos[2]) <= 3)// comico3
        {
            sendPlayerMessage(playerid, "Tu n'es plus en service", Green);
            setPlayerModel(playerid, 0);
            removePlayerWeapon(playerid, 3, 1); // Couteau
            removePlayerWeapon(playerid, 7, 200); // Pistolet
            removePlayerWeapon(playerid, 4, 7); // Grenades
            removePlayerWeapon(playerid, 15, 700); // M4
            return 1;
        }   
        else
        {
            sendPlayerMessage(playerid, "Tu n'es pas au vestiaire", Red);
        }
        return 1;
    {

    return 0;
}

addEvent("playerCommand", onPlayerCommand);

Si je pouvais avoir en bonus un petit tuto ou explication, ou encore mieu le code pour instaurer des factions je vous en serais très reconnaissant.

Merci d'avance  :biggrin:
Equipier_sas

Hors ligne Gilux

  • *
  • Mafioso
  • GOOBY PLS
  • Messages: 2209
    • Voir le profil
Re : restaurer ped model après le service.
« Réponse #1 le: 17 Août 2013, 15:49:29 »
Salut,
Il faut que tu stockes l'id du skin et des vêtements dans des variables quand tu passes en service, et quand tu arrêtes le service, tu redonnes au joueur le skin/les vêtements qui sont dans ces variables.
Par contre il te faudra un tableau, je crois me rappeler qu'il y a un tuto ici, sinon regarde dans la partie SA:MP, le principe est le même  :wink:

Hors ligne equipier_sas

  • *
  • Nouveau
  • Messages: 14
    • Voir le profil
Re : restaurer ped model après le service.
« Réponse #2 le: 17 Août 2013, 18:09:03 »
J'ai regarder le tuto des tables, sa parrait compliquer mais je pense que j'ai compris, seulement je me demande comment appeler la variable dans laquelle est stocker le Ped model.

je l'appel de cette façon :

local playerData = {};

function onPlayerConnect(playerid)
{
    playerData[playerid] <- {};
    playerData[playerid].var1 <- 1;//sauvegarde ped model
    playerData[playerid].var2 <- 2;
}
addEvent("playerConnect", onPlayerConnect);


function onPlayerCommand(playerid, command)
{

local cmd = split(command, " ");
    local Faction  = array(getPlayerSlots(), 0);

local modelid = getPlayerModel(playerid);
    if(cmd[0] == "/service")
    {
       
        local pos = getPlayerCoordinates(playerid);
        local rayon = 3;
        if(getDistanceBetweenPoints3D(93.514893, 1212.680786, 14.737936,pos[0],pos[1],pos[2]) <= 3)// Concessionnaire 1
        {
            modelid = playerData[playerid].var2 <- 1;
            setPlayerModel(playerid, 190);
            givePlayerWeapon(playerid, 3, 1); // Couteau
            givePlayerWeapon(playerid, 7, 200); // Pistolet
            givePlayerWeapon(playerid, 4, 7); // Grenades
            givePlayerWeapon(playerid, 15, 700); // M4
            sendPlayerMessage(playerid, "Tu es en service", Green);
            return 1;
        }   
        else
        {
            sendPlayerMessage(playerid, "Tu n'es pas au vestiaire", Red);
        }
        return 1;
    }
   
   
    if(cmd[0] == "/servicestop")
    {
        local pos = getPlayerCoordinates(playerid);
        local rayon = 3;
        if(getDistanceBetweenPoints3D(93.514893, 1212.680786, 14.737936,pos[0],pos[1],pos[2]) <= 3)// Concessionnaire 1
        {
            sendPlayerMessage(playerid, "Tu n'es plus en service", Green);
            setPlayerModel(playerid, playerData[playerid].var2);
            removePlayerWeapon(playerid, 3, 1); // Couteau
            removePlayerWeapon(playerid, 7, 200); // Pistolet
            removePlayerWeapon(playerid, 4, 7); // Grenades
            removePlayerWeapon(playerid, 15, 700); // M4
            return 1;
        }   
        else
        {
            sendPlayerMessage(playerid, "Tu n'es pas au vestiaire", Red);
        }
        return 1;
    }

addEvent("playerCommand", onPlayerCommand);

Sa ne fonctionne pas, je me doute que j'ai mal fais quelque chose..