Aide optimisation glua

  • Initiateur de la discussion FalkoS_
  • Date de début
  • Initiateur de la discussion
FalkoS_

FalkoS_

Bambi
Messages
38
Score réaction
0
Points
35
Hello :)
Code:
hook.Add("HUDPaint", "drawnikkyhud", function() local phealth = ply:Health() local parmor = ply:Armor() local pfood = ply:getDarkRPVar("Energy") local rpname = ply:getDarkRPVar("rpname") local job = ply:getDarkRPVar("job") local money = ply:getDarkRPVar("money")..(" € (+").. ply:getDarkRPVar("salary")..("€)") draw.RoundedBox(35, -30, ScrH() - 80, 350, 75, Color(51, 64, 86)) local Avatar = vgui.Create( "AvatarImage", Panel) Avatar:SetSize( 64, 64 ) Avatar:SetPos( 5, ScrH() - 75 ) Avatar:SetPlayer( LocalPlayer(), 64 ) draw.SimpleText(rpname, "HUDFont", 75, ScrH() - 75, Color(255, 255, 255)) draw.SimpleText(job, "HUDFontTwo", 75, ScrH() - 50, Color(255, 255, 255)) draw.SimpleText(money, "HUDFontTwo", 75, ScrH() - 35, Color(255, 255, 255))
end)
hook.Add("HUDShouldDraw", "removebasehud", function(name) if (name == "CHudHealth" or name == "CHudBattery") then return false end
end)
Voici mon code.
Est ce que quelqu'un pourrait m'aider à optimiser mon code ? J'ai l'impression que dès que je lance mon script mon jeu lag.
Je suis débutant.

Merciiiii :D:p
 
  • Initiateur de la discussion
FalkoS_

FalkoS_

Bambi
Messages
38
Score réaction
0
Points
35
RazzMo à dit:
Utilise se hook dans ton hud je pense que sa va résoudre ton problème NEXTBOT:BehaveStart()
Ok mais je met quoi dans la fonction de ce hook ?
 
G-F-CD TheFrench

G-F-CD TheFrench

namespace Arthur;
Messages
451
Score réaction
38
Points
140
Nan de mon coter rien a faire
 
While True

While True

Geek suprême
Messages
445
Score réaction
395
Points
190
Optimisation :
Tout vgui.Create est à EVITER dans un hook.Think/Tick/Paint c'est à coup sûr ça qui te fais lag!
Ruby:
-- Creation du panel avatar
local Avatar = nil -- pour pouvoir acceder à la variable ailleurs dans le code
hook.Add("InitPostEntity ", "initHud", function() Avatar = vgui.Create( "AvatarImage", Panel) Avatar:SetSize( 64, 64 ) Avatar:SetPos( 5, ScrH() - 75 ) Avatar:SetPlayer( LocalPlayer(), 64 )
end)
-- (Exemple si tu veux pas afficher l'avatar une fois mort:
hook.Add("HUDPaint", "drawnikkyhud", function() if LocalPlayer:Alive() then if !Avatar:IsVisible() then Avatar:Show() end else if Avatar:IsVisible() then Avatar:Hide() end end
end)
Micro-optimisation : (il n'y a pas de fonction lourde ici :p )
Les couleurs peuvent être stockées dans des variables locales en dehors du hook vu qu'elles ne changeront pas, pareil pour ScrH().
Si tu veux encore optimiser, tu peux stocker la vie, l'armure, le salaire de la même façon, et les actualiser fréquemment (timer ? autre hook?) en fonction des besoins.
 
  • J'aime
Réactions: FalkoS_ et Wabel
  • Initiateur de la discussion
FalkoS_

FalkoS_

Bambi
Messages
38
Score réaction
0
Points
35
While True à dit:
Optimisation :
Tout vgui.Create est à EVITER dans un hook.Think/Tick/Paint c'est à coup sûr ça qui te fais lag!
Ruby:
-- Creation du panel avatar
local Avatar = nil -- pour pouvoir acceder à la variable ailleurs dans le code
hook.Add("InitPostEntity ", "initHud", function() Avatar = vgui.Create( "AvatarImage", Panel) Avatar:SetSize( 64, 64 ) Avatar:SetPos( 5, ScrH() - 75 ) Avatar:SetPlayer( LocalPlayer(), 64 )
end)
-- (Exemple si tu veux pas afficher l'avatar une fois mort:
hook.Add("HUDPaint", "drawnikkyhud", function() if LocalPlayer:Alive() then if !Avatar:IsVisible() then Avatar:Show() end else if Avatar:IsVisible() then Avatar:Hide() end end
end)
Micro-optimisation : (il n'y a pas de fonction lourde ici :p )
Les couleurs peuvent être stockées dans des variables locales en dehors du hook vu qu'elles ne changeront pas, pareil pour ScrH().
Si tu veux encore optimiser, tu peux stocker la vie, l'armure, le salaire de la même façon, et les actualiser fréquemment (timer ? autre hook?) en fonction des besoins.
Merci beaucoup !
 
ALTA

ALTA

Geek suprême
Messages
449
Score réaction
212
Points
150
Razzmo... tu me désespère de jour en jour, ça m'étonne même pas ce genre de messages.
 
  • J'aime
Réactions: Wabel
Discord d'entraide
Rejoignz-nous sur Discord