Problème avec un son du jeu...

Répondre
Partager Rechercher
Bonjour,

J'utilise un addon qui switch automatiquement les radars herbo et mine toutes les x sec.

Mon soucis est qu'à chaque switch, le jeu émet le son de "j'active un radar" donc un genre de "tick" et ce, toutes les 2-3 sec... Ca me rend dingue

Donc je ne sais pas si c'est permis par Blibli mais est-il possible que je trouve ce son dans le répertoire de wow et que je le change par un fichier au même nom, même durée mais ce serait un blanc.

Je pense que ce n'est pas permis mais est-ce si grave?

Qu'en pensez-vous?
Ya moyen que ça soit interdit, par contre c'est autorisé de désactiver le moteur de son avant de faire une action puis de le remettre en marche. Pour faire simple, ton add on spam tout simplement le pistage toutes les x secondes, il pourrait couper le son, changer le pistage, remettre le son. Ça c'est autorisé et limite plus propre. Donc si tu es bidouillard, tu peux trifouiller les fichiers LUA de ton add on. Après une rapide recherche google, je crois que tu pourras utiliser les fonctions de l'API pour activer/couper le son (remplace sfx par 0 pour couper, et par 1 pour remettre) :

SetCVar("Sound_EnableSFX",sfx);

Donc en gros tu dois identifier dans le fichier LUA la ligne qui veut dire :

Cast(pistage des plantes);

et la remplacer par :

SetCVar("Sound_EnableSFX",0);
Cast(pistage des plantes);
SetCVar("Sound_EnableSFX",1);

Si tu trouves que je parle chinois, n'hésite pas à demander des précisions!

Edit: (ça irait pas dans le forum interface ça? )
Citation :
Publié par Voluptificus
Permis ou pas, je ne pense pas que Blibli s'interesse a quelque chose d'aussi benin.
La soluce d'ElTigroo est cependant la plus logique.


sauf que blizzard ne vois pas ce qui est modifier, il vois juste que c'est modifier, donc ban
Citation :
Publié par Bfah
La modif que t'as donné Eltigroo te permet justement de couper le son juste le temps du cast et de le remettre ensuite...
Voilà, le seul son coupé sera le "tick" du changement de pistage. A moins qu'il y ait du parallelisme et qu'un autre son se lance sur le même tic d'horloge, ce qui doit être à peu près aussi probable qu'une équipe de france qui gagne un match.
oui mais la musique d'ambiance sera elle aussi coupée, non?

Donc celle-ci sera également saccadée...

Enfin, je vais chercher à insérer la ligne de commande et si je n'y arrive pas, je vous demanderai un chtit coup de main
Bon, j'ai essayé de comprendre mais en fait... non!

Voici donc une partie du code qui a mon avis est celle dans laquelle il faut insérer la coupure de son.

Citation :
-- Get the tracking id of herbs and minerals
function MT_CheckTrackingIDs()
for i=1, GetNumTrackingTypes() do
name, texture, active, category = GetTrackingInfo(i);

if ( name == GetSpellInfo(2383) ) then
tracking["Herbs"] = i;
elseif ( name == GetSpellInfo(2580) )then
tracking["Minerals"] = i;

end
end
if(tracking["Herbs"] > 0) then
if(tracking["Minerals"] > 0) then
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Find Herbs and Find Minerals skills identified and ready to use.");
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Tracking interval is set to "..strsub(MT_UpdateInterval, 1,3).." seconds.");
return true;
else
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Find Minerals skill not found, aborting.");
end
else
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Find Herbs skill not found, aborting.");
end
end

-- Set the default addon interval if it's below 2 as.
function MT_checkInterval()
if(MT_UpdateInterval == nil) then
MT_UpdateInterval = 2.1;
end
end

-- Slash commands
SLASH_MULTITRACK1 = "/multitrack";
SLASH_MULTITRACK2 = "/mult";
SlashCmdList["MULTITRACK"] = function(param)
if ((param == 'start' or param == '') and run_mt == false) then
if (tracking["Herbs"] <= 0) then
return false;
elseif (tracking["Minerals"] <= 0) then
return false;
else
run_mt = true;
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Started.");
end
elseif ((param == 'stop' or param == '') and run_mt == true) then
run_mt = false;
DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00 Stopped.");
end
if (param == 'int') then
MultitrackerForm:Show();
end
end

Voilà, si quelqu'un pouvait me dire ou mettre les lignes de code ELtigroo a donnée...

Merci
Ca ne me semble pas la, de toutes facons, le sample ne doit pas etre dans la bibliotheque de sons de WoW mais dans le repertoire de l'add-on.
Donc tu le remplaces par un blank si tu ne trouves pas les lignes de commande dans le code.
Citation :
Publié par Voluptificus
Ca ne me semble pas la, de toutes facons, le sample ne doit pas etre dans la bibliotheque de sons de WoW mais dans le repertoire de l'add-on.
Donc tu le remplaces par un blank si tu ne trouves pas les lignes de commande dans le code.

Euh... Ce que je viens de quote, c'est le .lua de l'addon.
Apparement c'est l'addon "multitracker" que j'ai trouvé sur curse.
Dans Multitracker.lua, tout à la fin, tu as:
Code:
-- The main loop that switches skills.
function MT_OnUpdate(self, elapsed)
    switch_on_off();
    if(run_mt == true and pause_mt == false) then
        self.TimeSinceLastUpdate = self.TimeSinceLastUpdate + elapsed;     
        if (self.TimeSinceLastUpdate > MT_UpdateInterval) then
            if(tracker == 0) then
                SetTracking(tracking["Herbs"]);
               -- DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00"..self.TimeSinceLastUpdate);
                tracker = 1;
            else
                if(tracker == 1) then
                    SetTracking(tracking["Minerals"]);
                   -- DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack> |cffFFFF00"..self.TimeSinceLastUpdate);
                    tracker = 0;
                end
            end
            self.TimeSinceLastUpdate = 0;
        end
    end
end
Je pense que le code suivant devrait donner le résultat souhaité :

Code:
-- The main loop that switches skills.
function MT_OnUpdate(self, elapsed)
    switch_on_off();
    if(run_mt == true and pause_mt == false) then
        self.TimeSinceLastUpdate = self.TimeSinceLastUpdate + elapsed;      
        if (self.TimeSinceLastUpdate > MT_UpdateInterval) then
            if(tracker == 0) then
                SetCVar("Sound_EnableSFX",0);
                SetTracking(tracking["Herbs"]);
               --  DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack>  |cffFFFF00"..self.TimeSinceLastUpdate);
                SetCVar("Sound_EnableSFX",1);
                tracker = 1;
            else
                if(tracker == 1) then
                    SetCVar("Sound_EnableSFX",0);
                    SetTracking(tracking["Minerals"]);
                   --  DEFAULT_CHAT_FRAME:AddMessage("|cffFFCC00<Multitrack>  |cffFFFF00"..self.TimeSinceLastUpdate);
                    SetCVar("Sound_EnableSFX",1);
                    tracker = 0;
                end
            end
            self.TimeSinceLastUpdate = 0;
        end
    end
end
Si tu trouves que le son était vraiment gonflant, n'hésite pas à contacter le créateur de l'add on (via curse.com par exemple) pour lui conseiller la modif, en lui envoyant le fichier LUA modifié par exemple. Autant en faire profiter tout le monde.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés