Bonjour,
Alors tout d'abord, les .txd correspondent aux textures, et les .dff aux modèles 3D.
J'ai l'impression que tu veux juste changer la texture du sniper. (Précision que tu aurais pu nous donner.)
Pour pouvoir remplacer la texture du sniper, il faut attendre que la personne ai finit de téléchargé avant de remplacer la texture:
function customWeapons()
outputChatBox("Chargement de la texture ...")
local txd = engineLoadTXD("sniper.txd")
outputChatBox("Remplacement de la texture ...")
engineImportTXD(txd, 358)
outputChatBox("Nouvelle texture importé !")
end
addEventHandler( "onClientResourceStart", getResourceRootElement(getThisResource()),customWeapons)
J'ai mit ici des outputChatBox afin de voir dans la chatbox l'avancée du remplacement de la texture.
Si les 3 messages s'affichent, la nouvelle texture devrait être chargée.
Sinon, indique nous quels messages s'affichent et donne nous aussi les dernières erreurs dans ton clientscript.log
La console du serveur n'affiche que les erreurs des scripts serveur, pour les erreurs côté client, elles s'enregistrent dans ton clientscript.log
Le miens par exemple se trouve dans:
C:\Program Files (x86)\MTA San Andreas 1.3\MTA
Pour le addEventHandler, cela permet d'attacher une fonction à un event, dès que cet event sera "trigger" (ou appelé), MTA éxecutera toutes les fonctions qui auront été attaché à cet event.
Cette fonction prend (dans sa version minimale) 3 arguments:
1 - Le nom de l'event
2 - Quels sont les sources autorisée pour cette liaison (liaison entre l'event et la fonction)
3 - Quelle fonction à lier
Donc "onClientResourceStart" se fait "trigger" lorsque un ressource démarre, mais on veux quelle soit exécuté que pour la ressource courante (celle où se trouve ce code).
C'est ce que permet ceci: getResourceRootElement(getThisResource())
Voilà, dit nous ce qu'il en est.
Cordialement,
Citizen