- Initiateur de la discussion
Z
zoukilama
Geek
- Messages
- 15
- Score réaction
- 8
- Points
- 75
Salut à tous
je cherche par tout les moyens mais aucun topic qui aborde réellement le sujet
pour me faire la patte j'ai réaliser un simple printer à l'aide d'un tuto lua sur youtube
mais une fois en jeu quand je spawn deux printer les deux on exactement la même variable money qui s'affiche
si je ramasse les sous sur 1 sa me les ramasse aussi sur le deuxième printer
j'ai bien utiliser NetworkVar & self
init.lua
cl_init.lua
shared.lua
si quelqu'un à une indication de comment faire s'il vous plait.
mais ce que je comprend pas, NetworkVar et définie par le biais de self
ce qui devrais correspondre à l'entité en question or la on dirais que self représente pas l'instance mais le parent de l'instance (l'héritage) ?.
Merci d'avance
@ToTheHospital
je cherche par tout les moyens mais aucun topic qui aborde réellement le sujet
pour me faire la patte j'ai réaliser un simple printer à l'aide d'un tuto lua sur youtube
mais une fois en jeu quand je spawn deux printer les deux on exactement la même variable money qui s'affiche
si je ramasse les sous sur 1 sa me les ramasse aussi sur le deuxième printer
j'ai bien utiliser NetworkVar & self
init.lua
Code:
AddCSLuaFile("cl_init.lua")
AddCSLuaFile("shared.lua")
include('shared.lua')
local interval = 3
function ENT:Initialize() self:SetModel("models/props/cs_office/computer_monitor.mdl") self:PhysicsInit(SOLID_VPHYSICS) self:SetMoveType(MOVETYPE_VPHYSICS) self:SetSolid(SOLID_VPHYSICS) self.timer = CurTime() local phys = self:GetPhysicsObject() if phys:IsValid() then phys:Wake() end
end
function ENT:Think() if CurTime() > self.timer + interval then self.timer = CurTime() self:SetMoneyAmount(self:GetMoneyAmount() + 100) end
end
function ENT:Use( act, call) local money = self:GetMoneyAmount() self:SetMoneyAmount(0) call:addMoney(money)
end
function ENT:OnTakeDamage() return false
end
Code:
include('shared.lua')
local ME
surface.CreateFont( "Arial_Style_01", { font = "Arial", extended = false, size = 30, weight = 800, 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() ME=self
end
hook.Add("HUDPaint", "DrawMoney", function() local eye = LocalPlayer():GetEyeTrace() if eye.Entity:GetClass() == "zprinter" then draw.SimpleText(ME:GetMoneyAmount(), "Arial_Style_01", ScrW()/2, ScrH()/2, Color(0, 0, 0), 1, 1) end
end)
Code:
ENT.Type = "anim"
ENT.Base = "base_gmodentity"
ENT.PrintName = "ZPrinter"
ENT.Author = "ZoukiDev"
ENT.Category = "TrashStock"
ENT.Contact = "zouki.dev@gmail.com"
ENT.Instructions = "Approchez vous de l'ordinateur et actionnez votre touche [USE]"
ENT.Spawnable = true
ENT.AdminSpawnable = true
ENT.Editable = true
function ENT:SetupDataTables() self:NetworkVar( "Int", 1, "MoneyAmount" )
end
si quelqu'un à une indication de comment faire s'il vous plait.
mais ce que je comprend pas, NetworkVar et définie par le biais de self
ce qui devrais correspondre à l'entité en question or la on dirais que self représente pas l'instance mais le parent de l'instance (l'héritage) ?.
Merci d'avance
@ToTheHospital
Dernière édition: