Apprendre a coder

  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Pourquoi une erreur apparaît pour ce code en me disant que self est une valeur null ?
Code:
cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.Simpletext("NPC-Test", "TitleNPC", 0, 0, Color(255, 0, 0),
TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
 
Akulla

Akulla

Helpeur Divin
Messages
3 808
Score réaction
2 240
Points
550
LesGalériens à dit:
Pourquoi une erreur apparaît pour ce code en me disant que self est une valeur null ?
Code:
cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.Simpletext("NPC-Test", "TitleNPC", 0, 0, Color(255, 0, 0),
TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
https://fptje.github.io/glualint-web/

Don't use self in a non-metafunction
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Je met mon code ?
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
?
 
N

NowiseYTBG

Geek
Messages
170
Score réaction
9
Points
60
M

Membre supprimé 98332

Anonyme
LesGalériens à dit:
Je met mon code ?
Par contre @LesGalériens va falloir apprendre la patiente et éviter de up toutes les 10 minutes --' tkt y'aura toujours quelqu un pour t'aider ici.
 
  • J'aime
Réactions: LesGalériens
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Pourquoi cette erreur s'affiche je ne comprend pas :/
[ERROR] addons/npc_armor/lua/entities/npc-armor/cl_init.lua:101: attempt to index global 'self' (a nil value)
1. unknown - addons/npc_armor/lua/entities/npc-armor/cl_init.lua:101
 
D.Ace

D.Ace

Nouveau né
Messages
13
Score réaction
10
Points
20
LesGalériens à dit:
Pourquoi cette erreur s'affiche je ne comprend pas :/
[ERROR] addons/npc_armor/lua/entities/npc-armor/cl_init.lua:101: attempt to index global 'self' (a nil value)
1. unknown - addons/npc_armor/lua/entities/npc-armor/cl_init.lua:101
Envois ton code
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
D.Ace à dit:
Envois ton code
Son code est mis au dessus.

Peux-tu envoyer en revanche toute la fonction voire tout le fichier si c'est un petit fichier @LesGalériens ?
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
C'est pour le texte 3D2D au dessus du npc, voici mon code :

Pourtant sur le TuTo de
 
D.Ace

D.Ace

Nouveau né
Messages
13
Score réaction
10
Points
20
Feytone à dit:
Peux-tu envoyer en revanche toute la fonction voire tout le fichier si c'est un petit fichier @LesGalériens ?
C’est ce que je voulais dire ... je crois qu’il a mal placé son code ...
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Feytone à dit:
Son code est mis au dessus.

Peux-tu envoyer en revanche toute la fonction voire tout le fichier si c'est un petit fichier @LesGalériens ?
Oui je peut
Code:
include("shared.lua")
surface.CreateFont("TitleNPC", { font = "Arial", size = 35, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
surface.CreateFont("TextButtonArmurier", { font = "Trebuchet18", size = 20, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
function ENT:Draw() self:DrawModel()
end
local function OpenArmorMenuFrame() local scrw, scrh = ScrW(), ScrH() local armormenuframe = vgui.Create("DFrame") armormenuframe:SetPos(scrw * .3, scrh * .2) armormenuframe:SetSize(200, 200) armormenuframe:SetTitle("") armormenuframe:ShowCloseButton(false) function armormenuframe:Paint(w, h) draw.RoundedBox(0, 0, 0, w, h, Color(100, 100, 100)) draw.RoundedBox(0, 0, 0, w, 40, Color(50, 50, 50))
end
armormenuframe:MakePopup() local armormenuclose = vgui.Create("DImageButton", armormenuframe) armormenuclose:SetPos(170, 10) amormenuclose:SetSize(20, 20) armormenuclose:SetImage("icon16/cross.png") armormenuclose.DoClick = function() armormenuframe:Close()
end local armormenuheader = vgui.Create("DLabel", armormenuframe) armormenuheader:SetPos(10, 10) armormenuheader:SetSize(150, 20) armormenuheader:SetFont("Trebuchet18") armormenuheader:SetText("Buy Kevlar?")
end local armormenuentry = vgui.Create("DTextEntry", armormenuframe) armormenuentry:SetPos(150, 50) armormenuentry:SetSize(30, 30) armormenuentry:SetText("") function armormenuentry:Paint(w, h) draw.RoundedBox(0, 0, 0, w, h, Color(250, 250, 250)) draw.RoundedBox(0, 1, 1, w-2, h-2, Color(200, 200, 200)) self:DrawTextEntryText(Color(10, 10, 10), Color(10, 10, 10), Color(255, 255, 255)) end local yesbutton = vgui.Create("DButton", armormenuframe) yesbutton:SetPos(50, 100) yesbutton:SetSize(100, 30) yesbutton:SetText("Yes") yesbutton.DoClick = function() net.Start("YesAction") net.SendToServer() armormenuframe:Close() LocalPlayer():ChatPrint("You have just purchased a kevlar")
end local nothanksbutton = vgui.Create("DButton", armormenuframe) nothanksbutton:SetPos(50, 150) nothanksbutton:SetSize(100, 30) nothanksbutton:SetText("No Thanks") nothanksbutton.DoClick = function() net.Start("NoThanksAction") net.SendToServer() armormenuframe:Close()
end
cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.Simpletext("Armurier", "DermaDefault", 0, 0, Color(255, 0, 0),
TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
Add.Hook("ArmorMenu", ArmorMenuFrame)
net.Receive("ArmorMenuFrame", ArmorMenuFrame)
 
D.Ace

D.Ace

Nouveau né
Messages
13
Score réaction
10
Points
20
La cam 3D2D doit se placer dans le ENT: Draw() ;)
 
  • J'aime
Réactions: LesGalériens
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
D.Ace

D.Ace

Nouveau né
Messages
13
Score réaction
10
Points
20
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Ha daccord, merci :)
Sinon, ton self ne renvoie à rien tout simplement, si je me trompe pas. Il faut qu'il vise l'ENT.
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Ce code veut bien dire que j'ai oublier un '(' ou ')' a proximité de net ?
Code:
[ERROR] addons/npc_armor/lua/entities/npc-armor/init.lua:38: ')' expected (to close '(' at line 35) near 'net' 1. unknown - addons/npc_armor/lua/entities/npc-armor/init.lua:0
Car si c'est le cas je ne voit pas ou :
Code:
include("shared.lua")
surface.CreateFont("TitleNPC", { font = "Arial", size = 35, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
surface.CreateFont("TextButtonArmurier", { font = "Trebuchet18", size = 20, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
function ENT:Draw() self:DrawModel() net.Receive("ArmorMenuFrame", armormenuframe) cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.SimpleText("Armor", "DermaDefault", 0, 0, Color(255, 0, 0), TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
end
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Ce code veut bien dire que j'ai oublier un '(' ou ')' a proximité de net ?
Code:
[ERROR] addons/npc_armor/lua/entities/npc-armor/init.lua:38: ')' expected (to close '(' at line 35) near 'net' 1. unknown - addons/npc_armor/lua/entities/npc-armor/init.lua:0
Car si c'est le cas je ne voit pas ou :
Code:
include("shared.lua")
surface.CreateFont("TitleNPC", { font = "Arial", size = 35, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
surface.CreateFont("TextButtonArmurier", { font = "Trebuchet18", size = 20, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
function ENT:Draw() self:DrawModel() net.Receive("ArmorMenuFrame", armormenuframe) cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.SimpleText("Armor", "DermaDefault", 0, 0, Color(255, 0, 0), TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
end
Beh l'erreur parle d'elle-même :

Code:
[ERROR] addons/npc_armor/lua/entities/npc-armor/init.lua:38: ')' expected (to close '(' at line 35) near 'net' -- Un ')' demandé/voulu pour fermer le '(' à la ligne 35 près de net (du mot 'net') 1. unknown - addons/npc_armor/lua/entities/npc-armor/init.lua:0
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Feytone à dit:
Beh l'erreur parle d'elle-même :

Code:
[ERROR] addons/npc_armor/lua/entities/npc-armor/init.lua:38: ')' expected (to close '(' at line 35) near 'net' -- Un ')' demandé/voulu pour fermer le '(' à la ligne 35 près de net (du mot 'net') 1. unknown - addons/npc_armor/lua/entities/npc-armor/init.lua:0
Oui mais je vais pas en mettre un devant le net.Receive.. si ?
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Oui mais je vais pas en mettre un devant le net.Receive.. si ?
Hmm tu as rien avant ? Ce sont les bonnes lignes ?
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Voici le début de mon code, côté client. L'erreur ce situe de la ligne 38 a 35 d'après l'erreur.
Code:
include("shared.lua")
surface.CreateFont("TitleNPC", { font = "Arial", size = 35, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
surface.CreateFont("TextButtonArmurier", { font = "Trebuchet18", size = 20, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
function ENT:Draw() self:DrawModel() net.Receive("ArmorMenuFrame", armormenuframe) cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.SimpleText("Armor", "DermaDefault", 0, 0, Color(255, 0, 0), TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
end
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Voici le début de mon code, côté client. L'erreur ce situe de la ligne 38 a 35 d'après l'erreur.
Code:
include("shared.lua")
surface.CreateFont("TitleNPC", { font = "Arial", size = 35, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
surface.CreateFont("TextButtonArmurier", { font = "Trebuchet18", size = 20, weight = 600, blursize = 0, scanlines = 0, antialias = true, underline = false, italic = false, strikeout = false, symbol = false, rotary = false, shadow = false, additive = false, outline = false,
});
function ENT:Draw() self:DrawModel() net.Receive("ArmorMenuFrame", armormenuframe) cam.Start3D2D(self:GetPos() + self:GetUp() * 90, Angle(0, LocalPlayer():EyeAngles().y - 90,90), .35)
draw.SimpleText("Armor", "DermaDefault", 0, 0, Color(255, 0, 0), TEXT_ALIGN_CENTER, TEXT_ALIGN_LEFT)
cam.End3D2D()
end
Je détecte pas d'erreur...
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Apparament eux si :/
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Autant pour moi on as pas vu que l'erreur était côté serveur et non côté client
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Autant pour moi on as pas vu que l'erreur était côté serveur et non côté client
Ah oui. J'ai été con en plus j'ai vu le init mais ça a pas fait tilt avec le draw
 
  • J'aime
Réactions: LesGalériens
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Feytone à dit:
Ah oui. J'ai été con en plus j'ai vu le init mais ça a pas fait tilt avec le draw
Tkt j'ai pas tilt non plus lol
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Par contre je comprend pas pourquoi, mais le menu que je crée apparaît dès le spawn :/
 
Feytone

Feytone

Chuck Norris
Messages
4 741
Score réaction
1 301
Points
600
LesGalériens à dit:
Par contre je comprend pas pourquoi, mais le menu que je crée apparaît dès le spawn :/
Beh t'as bien fait en sorte qu'il s'affiche à la pression E sur le npc ?
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Feytone à dit:
Beh t'as bien fait en sorte qu'il s'affiche à la pression E sur le npc ?
Bah oui pourtant :/
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Voici mon code ou je fait en sort qu'il souvre quand j'appuie sur Use:
Code:
function ENT:Use(act, ply) if IsValid(ply) and ply:IsPlayer() then net.Start("ArmorMenuFrame") net.Send(ply) end
end
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
?
 
N

NowiseYTBG

Geek
Messages
170
Score réaction
9
Points
60
Tu as cherche sur Google tu t'es renseigné ?
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Oui depuis hier je cherche, les solutions a mes deux problème, j'ai essayer plein de chose mais rien y fait.. Les boutons et tout aparaîssent des le départ en haut a gauche, et mon npc ne spawn pas a part le nom au dessus.. Quesqui ne va pas dans le codep pour le moment ? : https://www.mediafire.com/file/7ezhvgaf4flzk92/npc_armor.rar
 
N

NowiseYTBG

Geek
Messages
170
Score réaction
9
Points
60
Envoie un screen de ce qui se passe
 
  • Initiateur de la discussion
LesGalériens

LesGalériens

Geek
Messages
405
Score réaction
2
Points
85
Oui, alors ce screen c'est pour montrer le menu les bouton et le DTextEntry en haut a gauche qui s'affiche au spawn :



Et celui ci pour montrer le npc qui ne spawn pas mis a part le cam 3D2D:
 
Discord d'entraide
Rejoignz-nous sur Discord