- Initiateur de la discussion
A
Angel of Death
Têtard
- Messages
- 1
- Score réaction
- 0
- Points
- 5
Bonjour(soir) je vous explique mon problème je suis entrain de coder un serveur Garry's mod je suis entrain de faire mon HUD mes un petit soucis ce porte a moi es que mon HUD a des barre pour intégrer ma barre de vie de faim es d'endurence mes le problème es que je n'arrive pas a découper ma barre de vie en diagonal (biso) pour l'intégrer a mon HUD malgré pas mal de code que j'ai pue mettre ca ne veux pas me faire la découpe quelqu'un pourrait m'aider pour pouvoir faire la découpe merci bien a vous
include("hud_droite.lua")
-- Créez une police de caractères pour le texte
surface.CreateFont("Default", {
font = "Arial",
extended = false,
size = 25,
weight = 500,
})
-- Créez une variable pour stocker votre image de fond
local backgroundImage = Material("materials/tkg/hud_gauche_0.png") -- Assurez-vous de spécifier le bon chemin vers votre image
hook.Add("HUDPaint", "hudtokyoghoul", function()
local health = LocalPlayer():Health()
-- Dessinez l'image de fond en bas à gauche de l'écran
surface.SetDrawColor(255, 255, 255, 255)
surface.SetMaterial(backgroundImage)
surface.DrawTexturedRect(0, ScrH() - backgroundImage:Height(), backgroundImage:Width(), backgroundImage:Height())
-- Ajustez les coordonnées x et y pour positionner la barre de vie sur l'image
local barX = 227 -- Ajustez la position en X (horizontale)
local barY = 1192 - backgroundImage:Height() - 1 -- Ajustez la position en Y (verticale) pour la barre de vie
-- Ajustez la largeur de la barre en fonction de la santé
local barWidth = health * 3
local barHeight = 19
-- Calcul des points de coupe en diagonale pour les coins supérieurs gauche et droit
local cutWidth = 19 -- Largeur de la coupe en diagonale (ajustez selon votre préférence)
local cutHeight = barHeight -- Hauteur de la coupe en diagonale (barHeight est la hauteur de la barre de vie)
local cutX1 = barX - 19 -- Point de départ X de la coupe en diagonale (coin supérieur gauche)
local cutY1 = barY -- Point de départ Y de la coupe en diagonale (coin supérieur gauche)
local cutX2 = barX + barWidth -- Point final X de la coupe en diagonale (coin supérieur droit)
local cutY2 = barY -- Point final Y de la coupe en diagonale (coin supérieur droit)
-- Dessinez la partie pleine de la barre de vie en biais
local healthColor = Color(187, 24, 31, 255)
draw.RoundedBox(0, barX, barY, barWidth, barHeight, healthColor)
-- Dessinez le masque en diagonale pour couper les coins supérieurs gauche
draw.NoTexture()
surface.SetDrawColor(0, 0, 0, 0) -- Couleur transparente
surface.DrawTexturedRectUV(cutX1, cutY1, cutWidth, cutHeight, 1, 1, 0, 0)
-- Calcul des points de coupe en diagonale pour les coins supérieurs droit
cutX1 = barX + barWidth
cutX2 = barX + barWidth + cutWidth
-- Dessinez le masque en diagonale pour couper les coins supérieurs droit
surface.DrawTexturedRectUV(cutX1, cutY1, cutWidth, cutHeight, 0, 0, 1, 1)
hook.Add("HUDShouldDraw", "mTxServ:ShouldDraw", function(name)
if HideElement[name] then return false end
end)
include("hud_droite.lua")
-- Créez une police de caractères pour le texte
surface.CreateFont("Default", {
font = "Arial",
extended = false,
size = 25,
weight = 500,
})
-- Créez une variable pour stocker votre image de fond
local backgroundImage = Material("materials/tkg/hud_gauche_0.png") -- Assurez-vous de spécifier le bon chemin vers votre image
hook.Add("HUDPaint", "hudtokyoghoul", function()
local health = LocalPlayer():Health()
-- Dessinez l'image de fond en bas à gauche de l'écran
surface.SetDrawColor(255, 255, 255, 255)
surface.SetMaterial(backgroundImage)
surface.DrawTexturedRect(0, ScrH() - backgroundImage:Height(), backgroundImage:Width(), backgroundImage:Height())
-- Ajustez les coordonnées x et y pour positionner la barre de vie sur l'image
local barX = 227 -- Ajustez la position en X (horizontale)
local barY = 1192 - backgroundImage:Height() - 1 -- Ajustez la position en Y (verticale) pour la barre de vie
-- Ajustez la largeur de la barre en fonction de la santé
local barWidth = health * 3
local barHeight = 19
-- Calcul des points de coupe en diagonale pour les coins supérieurs gauche et droit
local cutWidth = 19 -- Largeur de la coupe en diagonale (ajustez selon votre préférence)
local cutHeight = barHeight -- Hauteur de la coupe en diagonale (barHeight est la hauteur de la barre de vie)
local cutX1 = barX - 19 -- Point de départ X de la coupe en diagonale (coin supérieur gauche)
local cutY1 = barY -- Point de départ Y de la coupe en diagonale (coin supérieur gauche)
local cutX2 = barX + barWidth -- Point final X de la coupe en diagonale (coin supérieur droit)
local cutY2 = barY -- Point final Y de la coupe en diagonale (coin supérieur droit)
-- Dessinez la partie pleine de la barre de vie en biais
local healthColor = Color(187, 24, 31, 255)
draw.RoundedBox(0, barX, barY, barWidth, barHeight, healthColor)
-- Dessinez le masque en diagonale pour couper les coins supérieurs gauche
draw.NoTexture()
surface.SetDrawColor(0, 0, 0, 0) -- Couleur transparente
surface.DrawTexturedRectUV(cutX1, cutY1, cutWidth, cutHeight, 1, 1, 0, 0)
-- Calcul des points de coupe en diagonale pour les coins supérieurs droit
cutX1 = barX + barWidth
cutX2 = barX + barWidth + cutWidth
-- Dessinez le masque en diagonale pour couper les coins supérieurs droit
surface.DrawTexturedRectUV(cutX1, cutY1, cutWidth, cutHeight, 0, 0, 1, 1)
hook.Add("HUDShouldDraw", "mTxServ:ShouldDraw", function(name)
if HideElement[name] then return false end
end)