HUD- Besoin d'aide

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

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Bonjour je suis entrain de créé un hud, les avancements:
https://steamcommunity.com/sharedfiles/filedetails/?id=1372085504
Et jaimerais avoir un peu d'aide pour:
  • Enlever le ammo display" de base de gmod (en bas a droite)
  • Je ne trouve pas la fonction pour que si il y a un lockdown il s'affiche une icone et des que c'est finie l'icone diparais
  • Si il a une liscense d'arme idem, une icone s'affiche et des qu'il la plus l'icone disparaît
  • Avoir un auto scale car mon hud est que adapté pour le 1920x1080 et sa serait cool si on pourrais m'aider a corrigé cela.

Merci si vous pouvez m'aider !
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Avoir un auto scale car mon hud est que adapté pour le 1920x1080 et sa serait cool si on pourrais m'aider a corrigé cela.
https://wiki.garrysmod.com/page/Global/ScrH
https://wiki.garrysmod.com/page/Global/ScrW

Donc en gros au lieu de mettre tes rounded.box en X, Y, tu le met en ScrW() * 8, ScrH() * 4,1
Après à toi de le placer comme il faut


TheTakeus à dit:
Je ne trouve pas la fonction pour que si il y a un lockdown il s'affiche une icone et des que c'est finie l'icone diparais
Pour le lockdown, il faudra que tu utilise un fichier serveur et que tu utilise la fonction suivante:
https://wiki.darkrp.com/index.php/Functions/DarkRP/Server/lockdown

Si t'a besoin d'aide n'hésite pas :)


TheTakeus à dit:
Si il a une liscense d'arme idem, une icone s'affiche et des qu'il la plus l'icone disparaît
tient voilà le code que j'ai fait sur mon HUD, libre à toi de le modifier
Code:
 if LocalPlayer():getDarkRPVar("HasGunlicense") then local red_paper = Material( "materials/icons/red_paper.png" ) hook.Add( "HUDPaint", "red_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) else local black_paper = Material( "materials/icons/black_paper.png" ) hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) end
Si jamais tu à besoin de faire pareil quand le joueur est recherché:
Code:
 if LocalPlayer():getDarkRPVar("wanted") then local red_attention = Material( "materials/icons/red_attention.png" ) hook.Add( "HUDPaint", "red_attention", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_attention ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end ) else local black_attention = Material( "materials/icons/black_attention.png" ) hook.Add( "HUDPaint", "black_attention", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_attention ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 160 , 40, 40 ) end ) end
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
https://wiki.garrysmod.com/page/Global/ScrH
https://wiki.garrysmod.com/page/Global/ScrW

Donc en gros au lieu de mettre tes rounded.box en X, Y, tu le met en ScrW() * 8, ScrH() * 4,1
Après à toi de le placer comme il faut



Pour le lockdown, il faudra que tu utilise un fichier serveur et que tu utilise la fonction suivante:
https://wiki.darkrp.com/index.php/Functions/DarkRP/Server/lockdown

Si t'a besoin d'aide n'hésite pas :)



tient voilà le code que j'ai fait sur mon HUD, libre à toi de le modifier
Code:
 if LocalPlayer():getDarkRPVar("HasGunlicense") then local red_paper = Material( "materials/icons/red_paper.png" ) hook.Add( "HUDPaint", "red_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) else local black_paper = Material( "materials/icons/black_paper.png" ) hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) end
Si jamais tu à besoin de faire pareil quand le joueur est recherché:
Code:
 if LocalPlayer():getDarkRPVar("wanted") then local red_attention = Material( "materials/icons/red_attention.png" ) hook.Add( "HUDPaint", "red_attention", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_attention ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end ) else local black_attention = Material( "materials/icons/black_attention.png" ) hook.Add( "HUDPaint", "black_attention", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_attention ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 160 , 40, 40 ) end ) end
Merci énormément mais pour le lockdown j'ai pas compris
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Merci énormément mais pour le lockdown j'ai pas compris
Pour ton hud tu utilise juste le fichier dans le darkrpmodif ou alors c'est un addon que tu créé et qur tu met dans le dossier addons ?
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Pour ton hud tu utilise juste le fichier dans le darkrpmodif ou alors c'est un addon que tu créé et qur tu met dans le dossier addons ?
darkrp modif
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Ah bah je sait pas du tout, si c'était dans un addon je pourrait t'aider mais là je peut rien ça dépasse mes compétences dsl
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Ah bah je sait pas du tout, si c'était dans un addon je pourrait t'aider mais là je peut rien ça dépasse mes compétences dsl
C'est pas la meme chose ??
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Ah bah je sait pas du tout, si c'était dans un addon je pourrait t'aider mais là je peut rien ça dépasse mes compétences dsl
Le meme code ?
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
C'est pas la meme chose ??
Non

TheTakeus à dit:
Le meme code ?
Essaye de mettre ton code dans:
addons/le_nom_de_ton_hud/lua/autorun/cl_hud.lua
et dit moi si ton code marche encore (oublie pas d'enlever celui dans le darkrpmodif
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Non


Essaye de mettre ton code dans:
addons/le_nom_de_ton_hud/lua/autorun/cl_hud.lua
et dit moi si ton code marche encore (oublie pas d'enlever celui dans le darkrpmodif
Ok sinon le temp je chercherais la meme chose qu'avant (Liscense d'arme) mais la ces si il est rechèreché ou pas. sinon la je fais ce que tu ma dit
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Non


Essaye de mettre ton code dans:
addons/le_nom_de_ton_hud/lua/autorun/cl_hud.lua
et dit moi si ton code marche encore (oublie pas d'enlever celui dans le darkrpmodif
Tout marche !
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Non


Essaye de mettre ton code dans:
addons/le_nom_de_ton_hud/lua/autorun/cl_hud.lua
et dit moi si ton code marche encore (oublie pas d'enlever celui dans le darkrpmodif
J'ai sa en erreur
Code:
[ERROR] addons/thetakeushud/lua/autorun/cl_hud.lua:2: attempt to index global 'surface' (a nil value) 1. unknown - addons/thetakeushud/lua/autorun/cl_hud.lua:2
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Tout marche !
Bien alors tu va suivre ces étapes:
  1. Créer un fichier "init.lua" à côté de ton fichier "cl_hud.lua"
  2. Dedans mettre le code suivant:
Code:
util.AddNetworkString("lockdown") net.Start("lockdown") net.Send(player.GetAll)

  1. Retourner dans ton fichier "cl_hud.lua"
  2. Ajouter le code suivant avant ton hook.Paint
Code:
local lockdown = 0 net.Receive("lockdown", function(len, pl) lockdown = 1 end)
Puis il ne reste plus qu'a afficher l'image que tu souhaite quand "lockdown" vaut 1 (prend exemple sur le bonus que je t'ai donner tout à l'heure)
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
J'ai sa en erreur
Code:
[ERROR] addons/thetakeushud/lua/autorun/cl_hud.lua:2: attempt to index global 'surface' (a nil value) 1. unknown - addons/thetakeushud/lua/autorun/cl_hud.lua:2
Tu a une variable surface ou c'est un surface.Draw ?
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
non je n'ai pas de surface draw
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Bien alors tu va suivre ces étapes:
  1. Créer un fichier "init.lua" à côté de ton fichier "cl_hud.lua"
  2. Dedans mettre le code suivant:
Code:
util.AddNetworkString("lockdown") net.Start("lockdown") net.Send(player.GetAll)

  1. Retourner dans ton fichier "cl_hud.lua"
  2. Ajouter le code suivant avant ton hook.Paint
Code:
local lockdown = 0 net.Receive("lockdown", function(len, pl) lockdown = 1 end)
Puis il ne reste plus qu'a afficher l'image que tu souhaite quand "lockdown" vaut 1 (prend exemple sur le bonus que je t'ai donner tout à l'heure)
c'est juste sa ou pas : [Apres je suis pas sur et aussi je pense pas que le logo s'enleve des que le lockdown est finie

Code:
local red_paper = Material( "lockdown.png" )
local lockdown = 0 net.Receive("lockdown", function(len, pl) lockdown = 1 hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) end)
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
TheTakeus à dit:
c'est juste sa ou pas : [Apres je suis pas sur et aussi je pense pas que le logo s'enleve des que le lockdown est finie

Code:
local red_paper = Material( "lockdown.png" )
local lockdown = 0 net.Receive("lockdown", function(len, pl) lockdown = 1 hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) end)
J'ai fait des ereeur au niveau du matèrial, j'ai pas changé mais je le ferais
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
c'est juste sa ou pas : [Apres je suis pas sur et aussi je pense pas que le logo s'enleve des que le lockdown est finie

Code:
local red_paper = Material( "lockdown.png" )
local lockdown = 0 net.Receive("lockdown", function(len, pl) lockdown = 1 hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/16 + 290, ScrH() - 160 , 40, 40 ) end ) end)
Alors voilà le code:
Code:
 if lockdown == 1 then hook.Add( "HUDPaint", "lockdown", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( lockdown ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end ) end
Et au dessus de ton hook.Paint, tu définie tes Material
Code:
local lockdown = Material( "materials/icons/black_attention.png" )
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Alors voilà le code:
Code:
 if lockdown == 1 then hook.Add( "HUDPaint", "lockdown", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( lockdown ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end ) end
Et au dessus de ton hook.Paint, tu définie tes Material
Code:
local lockdown = Material( "materials/icons/black_attention.png" )
Merci et pour l'erreur de la surface ?
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Merci et pour l'erreur de la surface ?
Fait voir l'endroit où est ton erreur (tes 10 premières lignes)
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Fait voir l'endroit où est ton erreur (tes 10 premières lignes)
Sa vien de tes deux codes:(dsl j'etait partit mangé !
Code:
if LocalPlayer():getDarkRPVar("HasGunlicense") then local red_paper = Material( "materials/icons/red_paper.png" ) hook.Add( "HUDPaint", "red_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_paper ) surface.DrawTexturedRect( ScrW()/60 + 0, ScrH() - 150 , 40, 40 ) end ) else local black_paper = Material( "materials/icons/black_paper.png" ) hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/60 + 0, ScrH() - 150 , 40, 40 ) end ) end
------------------------------------------------------------------------------- if lockdown == 1 then local lockdown = Material( "materials/icons/black_attention.png" ) hook.Add( "HUDPaint", "lockdown", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( lockdown ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end )
 
Deadman69330

Deadman69330

Psychopathe
Messages
2 289
Score réaction
309
Points
290
TheTakeus à dit:
Sa vien de tes deux codes:(dsl j'etait partit mangé !
Code:
if LocalPlayer():getDarkRPVar("HasGunlicense") then local red_paper = Material( "materials/icons/red_paper.png" ) hook.Add( "HUDPaint", "red_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( red_paper ) surface.DrawTexturedRect( ScrW()/60 + 0, ScrH() - 150 , 40, 40 ) end ) else local black_paper = Material( "materials/icons/black_paper.png" ) hook.Add( "HUDPaint", "black_paper", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( black_paper ) surface.DrawTexturedRect( ScrW()/60 + 0, ScrH() - 150 , 40, 40 ) end ) end
------------------------------------------------------------------------------- if lockdown == 1 then local lockdown = Material( "materials/icons/black_attention.png" ) hook.Add( "HUDPaint", "lockdown", function() surface.SetDrawColor( 255, 255, 255, 255 ) surface.SetMaterial( lockdown ) surface.DrawTexturedRect( ScrW()/16 + 85, ScrH() - 200 , 40, 40 ) end )
Très étrange tout ça :/
Je voit pas du coup :/
 
  • Initiateur de la discussion
TheTakeus

TheTakeus

Têtard
Messages
18
Score réaction
0
Points
10
Deadman69330 à dit:
Très étrange tout ça :/
Je voit pas du coup :/
Ba depusi que j'ai mi cest de ligne de code sa fait sa
 
Discord d'entraide
Rejoignz-nous sur Discord