chneubeul

[0.3.8] Chargement de model depuis le GM - v0.1

3 messages dans ce sujet

Bonjour à tous et à toutes,

 

afin de simplifier le chargement des models dans votre gm, j'ai fait un petit script qui pourrais pour l'instant de recenser les SKINS dans un array.

 

Voila le script actuel : pastebin

 

Utilisation : Vos IDS de skin doivent être déclarer dans l'enum afin d'avoir une ID compris entre 20.000 et 30.000. NE PAS supprimer la valeur initiale = 20000 mais vous pouvez remplacez le nom de la variable. Les ids vont automatiquement s'incrémenter.

Ensuite ajouter les données dans l'array custom_skin que vous souhaitez chargez, peut importe l'ordre de vos IDs déclaré. La valeur du skin de base, a priori ne sert que de "masque", le skin initiale N'EST PAS remplacé et peut donc être utiliser ainsi le nouveau skin reprend la démarche par exemple du skin de base.

 

exemple d'usage :

 

cmd:setcustom(playerid, params[])
{
       if(!isAdminWriter(playerid)) { return noAccess(playerid); }
    new target, skinid;
    if(sscanf(params, "ud", target, skinid)) return SendClientMessage(playerid, COLOR_USAGE, "[Usage] /setcustom <playerid> <skinid>");
    
    SetPlayerSkinEx(target, skinid); //
    
    return 1;
}

Note : Le skinid, n'est donc pas celui de déclarer dans l'array, mais bien celui du l'index du tableau [0 à sizeof(custom_skin]. Je fournirais un menu pour pouvoir visualiser vos skin en jeux.

 

Problèmes rencontrés :

 

Issue 1 : [PROPRE A SA:MP]J'ai eu des pbs de chargement de skin, texture n'ont chargés, ou skin qui apparemment étais invalide cela ne vient pas du scripts ci dessus, mais du script fournis par sa:mp qui permet de récupérer des fichiers à distance. Ce script ne fonctionne pas bien pour l'instant, veillez à ne pas le mettre 

 

 


  public OnPlayerRequestDownload(playerid, type, crc) {     new fullurl[256+1];     new dlfilename[64+1];     new foundfilename=0;          if(!IsPlayerConnected(playerid)) return 0;          if(type == DOWNLOAD_REQUEST_TEXTURE_FILE) {         foundfilename = FindTextureFileNameFromCRC(crc,dlfilename,64);     }     else if(type == DOWNLOAD_REQUEST_MODEL_FILE) {         foundfilename = FindModelFileNameFromCRC(crc,dlfilename,64);     }     if(foundfilename) {         format(fullurl,256,"%s/%s",baseurl,dlfilename);         RedirectDownload(playerid,fullurl);     }          return 0; }

 

 

Issue 1 : Le skin 0, ne charge pas, il suffit de mettre un id que vous n'utiliserez pas exemple CUSTOM_INVALID puis de charger un fichier VALIDE ! C'est important, sinon le deuxième ne chargera pas.

ce qu'il faut faire :

{14,CUSTOM_INVALID, "Mila.dff", "Mila.txd"},
    {14,CUSTOM_WIFE,"Mila.dff", "Mila.txd"},

mauvaise facon :

   {14,CUSTOM_INVALID, "wrongfile.dff", "wrongfile.txd"},
    {14,CUSTOM_WIFE,"Mila.dff", "Mila.txd"},

A+, Sam.

:)

 

Modifié par chneubeul

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut comme j'ai plus te dire sur un autre poste, la version est encore en beta, se qui parfois peut donner quelque problème, gratte toi pas la tête, j'ai regarder aussi hier le fonctionnement se n'est pas compliqué, le problème sera la taille des fichier..

Fin merci quand même ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

 

je bosses sur un projet perso avec des skins etc.. et c'est une véritable galère avec le simple fichier artconfig. Du coup la c'est beaucoup plus simple et tu n'a pas à gérer toi même les customid qui sont attribué automatiquement :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant