Convar for color + ComboxBox

I want to make a ComboxBox can make to set the alpha to 0 or 255 and I’m not sure how to set it.
I have started but is not well functionnal.

Thanks

[lua]local W_Select = CreateClientConVar( “BoxColorAlpha”, “0”, false, false )
local BoxColor = W_Select:GetInt()
[/lua]

[lua] local CategoryContentOne = vgui.Create( “DCheckBoxLabel” )
CategoryContentOne:SetText( “Hide ?” )
CategoryContentOne:SetConVar( “BoxColor” )
CategoryContentOne:SetValue( 0 )
CategoryContentOne:SizeToContents()
CategoryList:AddItem( CategoryContentOne ) – Add the above item to our list[/lua]

Start over. Is what you meant to say in regular English:

I want to make a ComboBox that can set the alpha to 0 or 255.

What are you trying to set the alpha of? I don’t understand your problem.

sorry my primary language is french

The thing I want to do with checkbox is to make the alpha color to 0 when the checkbox is true.

Edit: sorry bad thing I mean CheckBox

Talk french I’ll help you.

OK merci ce que je veux faire c’est que le CheckBox lorsqu’il soit activé il change l’alpha à 255 pour que mon text soit visible. Voici mon script :

[lua] function myhud( x, y, wide, tall, alpha )

surface.CreateFont (“coolvetica”, 20, 400, true, false, “NormalText”)
surface.CreateFont (“coolvetica”, 24, 400, true, false, “MediumText”)

local MoveX = CreateClientConVar( “BoxMoveX”, “0”, false, false )
local BoxeX = MoveX:GetInt()

local MoveY = CreateClientConVar( “BoxMoveY”, “0”, false, false )
local BoxeY = MoveY:GetInt()

local AlphaColor = CreateClientConVar( “BoxColorAlpha”, “255”, false, false )
local BoxColor = AlphaColor:GetInt()

local yellow = Color(255, 210, 0, BoxColor + 255)
local red = Color(252, 0, 0, 255)

local screenRX = ScrW()
local screenRY = ScrH()

local client = LocalPlayer()

if !client:Alive() then return end

– Pistol Weapon INFO –

for k,v in pairs (LocalPlayer():GetWeapons()) do – Pistol Weapon ( Bottom Right )
if v:GetClass() == “weapon_pistol” then

local PrimaryAmmoType = client:GetAmmoCount(v:GetPrimaryAmmoType())
local SecondaryAmmoType = client:GetAmmoCount(v:GetSecondaryAmmoType())

local sH = surface.ScreenHeight() / 2
local sW = surface.ScreenWidth() / 2
local ply = LocalPlayer()

--	Info Boxes	--

	draw.RoundedBox( 6, sW - BoxeX + 325, sH - BoxeY + 260, 170, 25, Color( 0, 0, 0, 100 ) ) 						-- Primary Ammo Type Box
	draw.RoundedBox( 6, sW - BoxeX + 558, sH - BoxeY + 260, 70, 25, Color( 0, 0, 0, 100 ) )  						-- Alt. Ammo Box
    draw.RoundedBox( 0, ( ScrW() / 13 ) - 1, ( ScrH() - 88 ), ( ScrW() / 15 ), 80, Color( 130, 130, 130, 210 ) ) 

--	Amount PrimaryAmmo	--

	draw.SimpleText("Pistol ", "NormalText", sW - BoxeX + 334, sH - BoxeY + 263, yellow, 0, TEXT_ALIGN_RIGHT)		-- Weapon Name Text
	draw.SimpleText("Clip : ", "NormalText", sW + 375 - BoxeX, sH - BoxeY + 263, yellow, 0, TEXT_ALIGN_RIGHT)		-- Weapon Name Text 2
	draw.SimpleText("" .. v:Clip1(), "MediumText", sW + 420 - BoxeX, sH - BoxeY + 261, yellow, 0, 0)				-- Amount of Clip1
	draw.SimpleText("/ " .. PrimaryAmmoType, "NormalText", sW + 447 - BoxeX, sH - BoxeY + 263, yellow, 0, 0)		-- Amount of PrimaryAmmoType

--	Amount Alt. Ammo	--

	draw.SimpleText("      Alt", "NormalText", sW + 540 - BoxeX, sH - BoxeY + 263, yellow, 0, 0)					-- Alt. Ammo Text
	draw.SimpleText("" .. SecondaryAmmoType, "MediumText", sW + 600 - BoxeX, sH - BoxeY + 261, yellow, 0, 0)		-- Amount of Alt. Ammo
	


	

	end
end	



– Weapon INFO –



end

hook.Add(“HUDPaint”, “myhud”, myhud)

function myTestFunction()

local DermaPanel = vgui.Create( “DFrame” )
DermaPanel:SetPos( 50,50 )
DermaPanel:SetSize( 600, 550 )
DermaPanel:SetTitle( “Hud Ammo Modifier” )
DermaPanel:SetVisible( true )
DermaPanel:SetDraggable( true )
DermaPanel:ShowCloseButton( true )
DermaPanel:MakePopup()

local SomeCollapsibleCategory = vgui.Create(“DCollapsibleCategory”, DermaPanel)
SomeCollapsibleCategory:SetPos( 25,50 )
SomeCollapsibleCategory:SetSize( 200, 50 ) – Keep the second number at 50
SomeCollapsibleCategory:SetExpanded( 1 ) – Expanded when popped up
SomeCollapsibleCategory:SetLabel( “Pistol Box hud” )

CategoryList = vgui.Create( “DPanelList” )
CategoryList:SetAutoSize( true )
CategoryList:SetSpacing( 5 )
CategoryList:EnableHorizontal( false )
CategoryList:EnableVerticalScrollbar( true )

SomeCollapsibleCategory:SetContents( CategoryList ) – Add our list above us as the contents of the collapsible category

local CategoryContentOne = vgui.Create( "DCheckBoxLabel" )
CategoryContentOne:SetText( "Hide ?" )
CategoryContentOne:SetConVar( "BoxColor" )
CategoryContentOne:SetValue( 1 )
CategoryContentOne:SizeToContents()

CategoryList:AddItem( CategoryContentOne ) – Add the above item to our list

 local CategoryContentTwo = vgui.Create( "DNumSlider" )
CategoryContentTwo:SetSize( 150, 50 ) -- Keep the second number at 50
CategoryContentTwo:SetText( "Pistol Box Y" )
CategoryContentTwo:SetMin( 0 )
CategoryContentTwo:SetMax( 600 )
CategoryContentTwo:SetDecimals( 0 )
CategoryContentTwo:SetConVar( "BoxMoveY" )

CategoryList:AddItem( CategoryContentTwo )

 local CategoryContentThree = vgui.Create( "DNumSlider" )
CategoryContentThree:SetSize( 150, 50 ) -- Keep the second number at 50
CategoryContentThree:SetText( "Pistol Box X" )
CategoryContentThree:SetMin( 0 )
CategoryContentThree:SetMax( 980 )
CategoryContentThree:SetDecimals( 0 )
CategoryContentThree:SetConVar( "BoxMoveX" )

CategoryList:AddItem( CategoryContentThree )

end

concommand.Add(“my_test_function”, myTestFunction)[/lua]

Ya quelque chose que je ne comprend pas, si tu mes ton alpha a 255 ici:

[lua]
local AlphaColor = CreateClientConVar( “BoxColorAlpha”, “255”, false, false )
[/lua]

Pourquoi rajoute tu encore 255 a ton 255:

[lua]
local yellow = Color(255, 210, 0, BoxColor + 255)
[/lua]

C’est parce que j’ai essayé avec le Booléen et il ne fait que 1 sur la valeur, j’ai beau changer la valeur a 255 dans le CreateConvar et il ne prend pas cette valeur, alors c’est pour ça que j’ai essayé de mettre + 255 sur la valeur de 1 du Booléen. ( True )

Je ne sais pas si tu es au courant, mais un booléen c’est soi 1 ou 0, il n’y a AUCUNE autre possibilité. 1 étant “true” (vrai) et 0 étant “false” (faux).

you say 1 or 0 and after 1 true and 2 false ?

ouais je sais c’était pour ça le +255 sur le Booléen je me suis dit si le Booléen est 1 alors j’ai essayé avant

exemple : 0* 255 pour false qui ferais 0 et 1 * 255 pour faire 255 mais ca marchais pas, mais après j’avais testé voir avec le + 255 et ca ne marchais pas non plus<

Sinon as tu une idée qu’est-ce que je peut faire pour que je puisse faire un CheckBox qui fait apparaitre et disparraitre mon texte ?

Edit : J’ai trouvé ça fonctionné :slight_smile: :slight_smile:

[lua] function myhud( x, y, wide, tall, alpha )

surface.CreateFont (“coolvetica”, 20, 400, true, false, “NormalText”)
surface.CreateFont (“coolvetica”, 24, 400, true, false, “MediumText”)

local MoveX = CreateClientConVar( “BoxMoveX”, “0”, false, false )
local BoxeX = MoveX:GetInt()

local MoveY = CreateClientConVar( “BoxMoveY”, “0”, false, false )
local BoxeY = MoveY:GetInt()

local AlphaColor = CreateClientConVar( “BoxColorAlpha”, “0”, false, false )
local BoxColor = AlphaColor:GetInt()

local yellow = Color(255, 210, 0, BoxColor* 255)
local red = Color(252, 0, 0, 255)

local screenRX = ScrW()
local screenRY = ScrH()[/lua]

Maintenant , il me reste juste a faire bouger de gauche a droite automatiquement comme une animation mon HUD

Va faloir que tu utilise un Think() et que tu relie une variable au think. Celle si sera la position en X ou Y de ton objet de ton Hud.

Je l’ai jamais fait, mais c comme cela que je le ferait moi!

comme ca par example ?

Edit : Oulà ça fonctionne mais il y a que le chiffre avance a une telle vitesse, par exemple de 0 a 1000 en 10 secondes :S

Je vais voir si je peut mettre un Math.Min et Math.Max

Edit 2 : Finalement pas besoin de math.min et math.max , voilà ce que j’ai rajouté :

[lua]local MoveLabel = vgui.Create(“DLabel”, DermaPanel)
MoveLabel:SetPos(15, 30)
MoveLabel:SetText(“Time: 50”)
MoveLabel:SetSize( 50, 10)

function test()

MoveCount = MoveCount - 1

MoveLabel:SetText( "Time: " .. MoveCount + 255  )


end
timer.Create( "MyTimer", MoveTime , 255, test)

end [/lua]