Besoin d'aide pour une barre DProgress

  • Initiateur de la discussion
Begeek

Begeek

Geek
Messages
51
Score réaction
4
Points
95
Bonjour, Bonsoir
J'aurai besoin d'aide pour faire en sorte que lorsque l'on clique sur une des cases, un élément Dprogress s'affiche et qu'à la fin du timer cela give la santé et puis que le panel ce ferme automatiquement.
Merci D'avance de Votre Aide
Sunshio

Code:
 local healthtext1 = vgui.Create("DLabel" , frame) healthtext1:SetPos(130, 40) healthtext1:SetSize(590, 55) healthtext1:SetFont("trebuchet20") healthtext1:SetText("Hey, \nSalut je peux te soigner pour un peu d'argent.") healthtext1:SetTextColor(HealthNPCConfig.MenuTextColor) local frame2 = vgui.Create("DPanel", frame) frame2:SetSize(440, 178) frame2:SetPos(15,130) frame2.Paint = function(s,w,h) draw.RoundedBox(35,5,0,w,h,HealthNPCConfig.Color_2 ) end for k,v in pairs(healthtable) do local bhealth = vgui.Create("DButton", frame2) bhealth:Dock(TOP) bhealth:DockMargin(20, 9, 0, 0 ) bhealth:SetSize(200,50) bhealth:SetText(v.BText) bhealth:SetFont("trebuchet35") bhealth:SetTextColor(HealthNPCConfig.ButtonTextColor) bhealth.DoClick = function(self) local ply = LocalPlayer() local plymoney = LocalPlayer():getDarkRPVar("money") local Price = v.Price if plymoney >= Price and ply:Health() < ply:GetMaxHealth() then net.Start("GiveHealthNPC") net.WriteString(k) net.SendToServer() notification.AddLegacy( v.NotifyText, NOTIFY_GENERIC, 3 ) surface.PlaySound(HealthNPCConfig.SoundAccept ) elseif plymoney < Price then notification.AddLegacy( v.NotifyDeny, NOTIFY_ERROR, 3 ) surface.PlaySound( HealthNPCConfig.SoundDeny ) elseif ply:Health() >= ply:GetMaxHealth() then notification.AddLegacy("Votre jauge de vie est pleine",NOTIFY_ERROR,3) surface.PlaySound( HealthNPCConfig.SoundDeny ) end end bhealth.Paint = function(s,w,h) draw.RoundedBox(35,5,0,w,h,HealthNPCConfig.ButtonColor_1) draw.RoundedBox(25,1,1,w -2,h -2,HealthNPCConfig.ButtonColor_2) end end
end
unknown.png
 
enzoFR60

enzoFR60

Geek suprême
Messages
90
Score réaction
21
Points
115
Bijour, voila tien,

Code:
local DProgress = vgui.Create("DProgress", frame) DProgress:SetSize(440, 20) DProgress:SetPos(20,100) DProgress.CanUse = false DProgress:SetFraction( 0.0 ) local delay = 1 local lastOccurance = -delay DProgress.Think = function( self ) local timeElapsed = CurTime() - lastOccurance if timeElapsed < delay then else if self.CanUse == true then if self:GetFraction() < 1 then self:SetFraction( self:GetFraction()+0.1 ) lastOccurance = CurTime() elseif self:GetFraction() >= 1 then frame:Remove() end end end end
bhealth.DoClick = function(self) local ply = LocalPlayer() local plymoney = LocalPlayer():getDarkRPVar("money") local Price = v.Price if plymoney >= Price and ply:Health() < ply:GetMaxHealth() then net.Start("GiveHealthNPC") net.WriteString(k) net.SendToServer() notification.AddLegacy( "Tu a reçu "..v.BText, NOTIFY_GENERIC, 3 ) surface.PlaySound(HealthNPCConfig.SoundAccept ) DProgress.CanUse = true elseif plymoney < Price then notification.AddLegacy( "Tu n'a pas assez d'argent", NOTIFY_ERROR, 3 ) --surface.PlaySound( HealthNPCConfig.SoundDeny ) elseif ply:Health() >= ply:GetMaxHealth() then notification.AddLegacy("Votre jauge de vie est pleine",NOTIFY_ERROR,3) --surface.PlaySound( HealthNPCConfig.SoundDeny ) end end
apres a toi de gerer le coter server :p

source : http://wiki.garrysmod.com/page/Delays_and_Cooldowns
 
  • Initiateur de la discussion
Begeek

Begeek

Geek
Messages
51
Score réaction
4
Points
95
Cimer
 
Discord d'entraide
Rejoignz-nous sur Discord