Don't like ads? PRO users don't see any ads ;-)
Guest

cl_nwvars.lua

By: KatNotDinner on Apr 29th, 2012  |  syntax: Lua  |  size: 12.13 KB  |  hits: 54  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. local meta1 = _R.Entity
  2. local meta2 = _R.Player
  3. local bools = {true, false}
  4.  
  5. /*function meta2:SetNWString( str, val, b )
  6.         if !self.NWvars then self.NWvars = {} end
  7.         if !self.NWvars.String[ str ] then self.NWvars.String[ str ] = {} end
  8.         self.NWvars[ str ] = val
  9.     if b then
  10.             net.Start( "StringCL" )
  11.                 net.WriteEntity( self )
  12.                     net.WriteString( str )
  13.                     net.WriteString( val )
  14.             net.SendToServer()
  15.         end
  16. end
  17.  
  18. function meta2:SetNWEntity( str, ent, b )
  19.         if !self.NWvars then self.NWvars = {} end
  20.         if !self.NWvars.Entity[ str ] then self.NWvars.Entity[ str ] = {} end
  21.         self.NWvars.Entity[ str ] = ent
  22.         if b then
  23.             net.Start( "EntityCL" )
  24.                 net.WriteEntity( self )
  25.                     net.WriteString( str )
  26.                     net.WriteEntity( ent )
  27.             net.SendToServer()
  28.         end
  29. end
  30.  
  31. function meta2:SetNWBool( str, bool, b )
  32.         if !self.NWvars then self.NWvars = {} end
  33.         if !self.NWvars.Bool[ str ] then self.NWvars.Bool[ str ] = {} end
  34.         self.NWvars.Bool[ str ] = bool
  35.         if b then
  36.             net.Start( "BoolCL" )
  37.                 net.WriteEntity( self )
  38.                     net.WriteString( str )
  39.                         if bool then   
  40.                                 net.WriteInt( 1 )
  41.                         else
  42.                                 net.WriteInt( 2 )
  43.                         end
  44.             net.SendToServer()
  45.         end
  46. end
  47.  
  48. function meta2:SetNWFloat( str, fl, b )
  49.         if !self.NWvars then self.NWvars = {} end
  50.         if !self.NWvars.Float[ str ] then self.NWvars.Float[ str ] = {} end
  51.         self.NWvars.Float[ str ] = fl
  52.         if b then
  53.             net.Start( "FloatCL" )
  54.                 net.WriteEntity( self )
  55.                     net.WriteString( str )
  56.                     net.WriteFloat( fl )
  57.             net.SendToServer()
  58.         end
  59. end
  60.  
  61. function meta2:SetNWInt( str, int, b )
  62.         if !self.NWvars then self.NWvars = {} end
  63.         if !self.NWvars.Int[ str ] then self.NWvars.Int[ str ] = {} end
  64.         self.NWvars.Int[ str ] = int
  65.         if b then
  66.             net.Start( "IntCL" )
  67.                 net.WriteEntity( self )
  68.                     net.WriteString( str )
  69.                     net.WriteInt( fl )
  70.             net.SendToServer()
  71.         end
  72. end
  73.  
  74. function meta2:SetNWAngle( str, ang, b )
  75.         if !self.NWvars then self.NWvars = {} end
  76.         if !self.NWvars.Angle[ str ] then self.NWvars.Angle[ str ] = {} end
  77.         self.NWvars.Angle[ str ] = ang
  78.         if b then
  79.             net.Start( "AngleCL" )
  80.                 net.WriteEntity( self )
  81.                     net.WriteString( str )
  82.                     net.WriteAngle( ang )
  83.             net.SendToServer()
  84.         end
  85. end
  86.  
  87. function meta2:SetNWVector( str, ang, b )
  88.         if !self.NWvars then self.NWvars = {} end
  89.         if !self.NWvars.Vector[ str ] then self.NWvars.Vector[ str ] = {} end
  90.         self.NWvars.Vector[ str ] = ang
  91.         if b then
  92.             net.Start( "VectorCL" )
  93.                 net.WriteEntity( self )
  94.                     net.WriteString( str )
  95.                     net.WriteVector( ang )
  96.             net.SendToServer()
  97.         end
  98. end
  99.  
  100. function meta2:SetNetworkedVar( str, var, b )
  101.     if type(var) == "string" then
  102.             self:SetNWString( str, var, b )
  103.                 return
  104.         elseif type(var) == "number" then
  105.             if tostring(var):find( "." ) then
  106.                     self:SetNWFloat( str, var, b )
  107.                 else
  108.                     self:SetNWInt( str, var, b )
  109.                 end
  110.         elseif type(var) == "bool" then
  111.             self:SetNWBool( str, var, b )
  112.         elseif var.p and var.y and var.r then
  113.             self:SetNWAngle( str, var, b )
  114.         elseif var.x and var.y and var.z then
  115.             self:SetNWVector( str, var, b )
  116.         elseif ValidEntity(var) then
  117.             self:SetNWEntity( str, var, b )
  118.         end
  119. end*/
  120.  
  121. function meta1:SetNWString( str, val, b )
  122.         self.NWvars = self.NWvars or {}
  123.         self.NWvars.String = self.NWvars.String or {}
  124.         self.NWvars.String[ str ] = self.NWvars.String[ str ] or {}
  125.         self.NWvars[ str ] = val
  126.     if b then
  127.             net.Start( "StringCL" )
  128.                 net.WriteEntity( self )
  129.                     net.WriteString( str )
  130.                     net.WriteString( val )
  131.             net.SendToServer()
  132.         end
  133. end
  134.  
  135. function meta1:SetNWEntity( str, ent, b )
  136.         self.NWvars = self.NWvars or {}
  137.         self.NWvars.Entity = self.NWvars.Entity or {}
  138.         self.NWvars.Entity[ str ] = self.NWvars.Entity[ str ] or {}
  139.         self.NWvars.Entity[ str ] = ent
  140.         if b then
  141.             net.Start( "EntityCL" )
  142.                 net.WriteEntity( self )
  143.                     net.WriteString( str )
  144.                     net.WriteEntity( ent )
  145.             net.SendToServer()
  146.         end
  147. end
  148.  
  149. function meta1:SetNWBool( str, bool, b )
  150.         self.NWvars = self.NWvars or {}
  151.         self.NWvars.Bool = self.NWvars.Bool or {}
  152.         self.NWvars.Bool[ str ] = self.NWvars.Bool[ str ] or {}
  153.         self.NWvars.Bool[ str ] = bool
  154.         if b then
  155.             net.Start( "BoolCL" )
  156.                 net.WriteEntity( self )
  157.                     net.WriteString( str )
  158.                         net.WriteBit( bool )
  159.             net.SendToServer()
  160.         end
  161. end
  162.  
  163. function meta1:SetNWFloat( str, fl, b )
  164.         self.NWvars = self.NWvars or {}
  165.         self.NWvars.Float = self.NWvars.Float or {}
  166.         self.NWvars.Float[ str ] = self.NWvars.Float[ str ] or {}
  167.         self.NWvars.Float[ str ] = fl
  168.         if b then
  169.             net.Start( "FloatCL" )
  170.                 net.WriteEntity( self )
  171.                     net.WriteString( str )
  172.                     net.WriteFloat( fl )
  173.             net.SendToServer()
  174.         end
  175. end
  176.  
  177. function meta1:SetNWInt( str, int, b )
  178.         self.NWvars = self.NWvars or {}
  179.         self.NWvars.Int = self.NWvars.Int or {}
  180.         self.NWvars.Int[ str ] = self.NWvars.Int[ str ] or {}
  181.         self.NWvars.Int[ str ] = int
  182.         if b then
  183.             net.Start( "IntCL" )
  184.                 net.WriteEntity( self )
  185.                     net.WriteString( str )
  186.                     net.WriteInt( fl, 32 )
  187.             net.SendToServer()
  188.         end
  189. end
  190.  
  191. function meta1:SetNWAngle( str, ang, b )
  192.         self.NWvars = self.NWvars or {}
  193.         self.NWvars.Angle = self.NWvars.Angle or {}
  194.         self.NWvars.Angle[ str ] = self.NWvars.Angle[ str ] or {}
  195.         self.NWvars.Angle[ str ] = ang
  196.         if b then
  197.             net.Start( "AngleCL" )
  198.                 net.WriteEntity( self )
  199.                     net.WriteString( str )
  200.                     net.WriteAngle( ang )
  201.             net.SendToServer()
  202.         end
  203. end
  204.  
  205. function meta1:SetNWVector( str, ang, b )
  206.         self.NWvars = self.NWvars or {}
  207.         self.NWvars.Vector = self.NWvars.Vector or {}
  208.         self.NWvars.Vector[ str ] = self.NWvars.Vector[ str ] or {}
  209.         self.NWvars.Vector[ str ] = vec
  210.         if b then
  211.             net.Start( "VectorCL" )
  212.                 net.WriteEntity( self )
  213.                     net.WriteString( str )
  214.                     net.WriteVector( ang )
  215.             net.SendToServer()
  216.         end
  217. end
  218.  
  219. function meta1:SetNetworkedVar( str, var, b )
  220.     if type(var) == "string" then
  221.             self:SetNWString( str, var, b )
  222.                 return
  223.         elseif type(var) == "number" then
  224.             if tostring(var):find( "." ) then
  225.                     self:SetNWFloat( str, var, b )
  226.                 else
  227.                     self:SetNWInt( str, var, b )
  228.                 end
  229.         elseif type(var) == "bool" then
  230.             self:SetNWBool( str, var, b )
  231.         elseif var.p and var.y and var.r then
  232.             self:SetNWAngle( str, var, b )
  233.         elseif var.x and var.y and var.z then
  234.             self:SetNWVector( str, var, b )
  235.         elseif ValidEntity(var) then
  236.             self:SetNWEntity( str, var, b )
  237.         end
  238. end
  239.  
  240. function meta1:GetNWBool( str )
  241.     if !self.NWvars.Bool[ str ] then return end
  242.         return self.NWvars.Bool[ str ]
  243. end
  244.  
  245. function meta1:GetNWString( str )
  246.     if !self.NWvars.String[ str ] then return end
  247.         return self.NWvars.String[ str ]
  248. end
  249.  
  250. function meta1:GetNWAngle( str )
  251.     if !self.NWvars.Angle[ str ] then return end
  252.         return self.NWvars.Angle[ str ]
  253. end
  254.  
  255. function meta1:GetNWVector( str )
  256.     if !self.NWvars.Vector[ str ] then return end
  257.         return self.NWvars.Vector[ str ]
  258. end
  259.  
  260. function meta1:GetNWFloat( str )
  261.     if !self.NWvars.Float[ str ] then return end
  262.         return self.NWvars.Float[ str ]
  263. end
  264.  
  265. function meta1:GetNWInt( str )
  266.     if !self.NWvars.Int[ str ] then return end
  267.         return self.NWvars.Int[ str ]
  268. end
  269.  
  270. function meta1:GetNWEntity( str )
  271.     if !self.NWvars.Entity[ str ] then return end
  272.         return self.NWvars.Entity[ str ]
  273. end
  274.  
  275. function meta1:GetNetworkedVar( str )
  276.     if self.NWvars.Vector[ str ] then
  277.         return self.NWvars.Vector[ str ]
  278.         elseif self.NWvars.Entity[ str ] then
  279.             return self.NWvars.Entity[ str ]
  280.         elseif self.NWvars.String[ str ] then
  281.             return self.NWvars.String[ str ]
  282.         elseif self.NWvars.Float[ str ] then
  283.             return self.NWvars.Float
  284.         elseif self.NWvars.Angle[ str ] then
  285.             return self.NWvars.Angle[ str ]
  286.         elseif self.NWvars.Bool[ str ] then
  287.             return self.NWvars.Bool[ str ]
  288.         end
  289. end
  290. /*
  291. function meta2:GetNWBool( str )
  292.     if !self.NWvars.Bool[ str ] then return end
  293.         return self.NWvars.Bool[ str ]
  294. end
  295.  
  296. function meta2:GetNWString( str )
  297.     if !self.NWvars.String[ str ] then return end
  298.         return self.NWvars.String[ str ]
  299. end
  300.  
  301. function meta2:GetNWAngle( str )
  302.     if !self.NWvars.Angle[ str ] then return end
  303.         return self.NWvars.Angle[ str ]
  304. end
  305.  
  306. function meta2:GetNWVector( str )
  307.     if !self.NWvars.Vector[ str ] then return end
  308.         return self.NWvars.Vector[ str ]
  309. end
  310.  
  311. function meta2:GetNWFloat( str )
  312.     if !self.NWvars.Float[ str ] then return end
  313.         return self.NWvars.Float[ str ]
  314. end
  315.  
  316. function meta2:GetNWInt( str )
  317.     if !self.NWvars.Int[ str ] then return end
  318.         return self.NWvars.Int[ str ]
  319. end
  320.  
  321. function meta2:GetNWEntity( str )
  322.     if !self.NWvars.Entity[ str ] then return end
  323.         return self.NWvars.Entity[ str ]
  324. end
  325.  
  326. function meta2:GetNetworkedVar( str )
  327.     if self.NWvars.Vector[ str ] then
  328.         return self.NWvars.Vector[ str ]
  329.         elseif self.NWvars.Entity[ str ] then
  330.             return self.NWvars.Entity[ str ]
  331.         elseif self.NWvars.String[ str ] then
  332.             return self.NWvars.String[ str ]
  333.         elseif self.NWvars.Float[ str ] then
  334.             return self.NWvars.Float
  335.         elseif self.NWvars.Angle[ str ] then
  336.             return self.NWvars.Angle[ str ]
  337.         elseif self.NWvars.Bool[ str ] then
  338.             return self.NWvars.Bool[ str ]
  339.         end
  340. end*/
  341.  
  342. net.Receive( "Vector", function(m)
  343.         local ent = net.ReadEntity()
  344.         local str = net.ReadString()
  345.         ent.NWvars = ent.NWvars or {}
  346.         ent.NWvars.Vector = ent.NWvars.Vector or {}
  347.         ent.NWvars.Vector[ str ] = ent.NWvars.Vector[ str ] or {}
  348.         ent.NWvars.Vector[ str ] = net.ReadVector()
  349. end)
  350.  
  351. net.Receive( "Angle", function(m)
  352.         local ent = net.ReadEntity()
  353.         local str = net.ReadString()
  354.         ent.NWvars = ent.NWvars or {}
  355.         ent.NWvars.Angle = ent.NWvars.Angle or {}
  356.         ent.NWvars.Angle[ str ] = ent.NWvars.Angle[ str ] or {}
  357.         ent.NWvars.Angle[ str ] = net.ReadAngle()
  358. end)
  359.  
  360. net.Receive( "Float", function(m)
  361.         local ent = net.ReadEntity()
  362.         local str = net.ReadString()
  363.         ent.NWvars = ent.NWvars or {}
  364.         ent.NWvars.Float = ent.NWvars.Float or {}
  365.         ent.NWvars.Float[ str ] = ent.NWvars.Float[ str ] or {}
  366.         ent.NWvars.Float[ str ] = net.ReadFloat()
  367. end)
  368.  
  369. net.Receive( "Int", function(m)
  370.         local ent = net.ReadEntity()
  371.         local str = net.ReadString()
  372.         ent.NWvars = ent.NWvars or {}
  373.         ent.NWvars.Int = ent.NWvars.Int or {}
  374.         ent.NWvars.Int[ str ] = ent.NWvars.Int[ str ] or {}
  375.         ent.NWvars.Int[ str ] = net.ReadInt( 32 )
  376. end)
  377.  
  378. net.Receive( "Bool", function(m)
  379.         local ent = net.ReadEntity()
  380.         local str = net.ReadString()
  381.         local var = net.ReadBit()
  382.         ent.NWvars = ent.NWvars or {}
  383.         ent.NWvars.Bool = ent.NWvars.Bool or {}
  384.         ent.NWvars.Bool[ str ] = ent.NWvars.Bool[ str ] or {}
  385.         ent.NWvars.Bool[ str ] = var
  386. end)
  387.  
  388. net.Receive( "Entity", function(m)
  389.         local ent = net.ReadEntity()
  390.         local str = net.ReadString()
  391.         local ent2 = net.ReadEntity()
  392.         ent.NWvars = ent.NWvars or {}
  393.         ent.NWvars.Entity = ent.NWvars.Entity or {}
  394.         ent.NWvars.Entity[ str ] = ent.NWvars.String[ str ] or {}
  395.         ent.NWvars.Entity[ str ] = ent2
  396. end)
  397.  
  398. net.Receive( "String", function(m)
  399.         local ent = net.ReadEntity()
  400.         local str = net.ReadString()
  401.         local str2 = net.ReadString()
  402.         ent.NWvars = ent.NWvars or {}
  403.         ent.NWvars.String = ent.NWvars.String or {}
  404.         ent.NWvars.String[ str ] = ent.NWvars.String[ str ] or {}
  405.         ent.NWvars.String[ str ] = str2
  406. end)
  407.  
  408. net.Receive( "NWVars", function(um)
  409. local num = net.ReadEntity()
  410. local str = net.ReadTable()
  411. num.NWvars = num.NWvars or {}
  412. num.NWvars = str
  413. end)
  414.  
  415. _R.Entity.SetNWVar = meta1.SetNetworkedVar -- making sure that I override ALL of the nwvar functions
  416. _R.Entity.SetNetworkedInt = meta1.SetNWInt
  417. _R.Entity.SetNetworkedFloat = meta1.SetNWFloat
  418. _R.Entity.SetNetworkedEntity = meta1.SetNWEntity
  419. _R.Entity.SetNetworkedString = meta1.SetNWString
  420. _R.Entity.SetNetworkedBool = meta1.SetNWBool
  421. _R.Entity.SetNetworkedAngle = meta1.SetNWAngle
  422. _R.Entity.SetNetworkedVector = meta1.SetNWVector
  423. /*
  424. _R.Player.SetNWVar = meta2.SetNetworkedVar -- making sure that I override ALL of the nwvar functions
  425. _R.Player.SetNetworkedInt = meta2.SetNWInt
  426. _R.Player.SetNetworkedFloat = meta2.SetNWFloat
  427. _R.Player.SetNetworkedEntity = meta2.SetNWEntity
  428. _R.Player.SetNetworkedString = meta2.SetNWString
  429. _R.Player.SetNetworkedBool = meta2.SetNWBool
  430. _R.Player.SetNetworkedAngle = meta2.SetNWAngle
  431. _R.Player.SetNetworkedVector = meta2.SetNWVector*/