I'm trying to make an overpowered SWEP and I've encountered an error:
[Rodrigo Sanchez|2|STEAM_0:0:91442540] Lua Error:
[ERROR] addons/one_paunch_modified/lua/weapons/weapon_one_paunch_modified.lua:97: attempt to call field 'Create' (a nil value)
1. unknown - addons/one_paunch_modified/lua/weapons/weapon_one_paunch_modified.lua:97
Here's the code:
function SWEP:SecondaryAttack()
self:EmitSound("punch.wav", 100, 100, 1, CHAN_WEAPON )
self:PrimaryAttack( true )
local explode = ents.Create( "env_explosion" )
if ( SERVER && IsValid( explode ) ) then
explode:SetPos( ( self.Owner:EyePos() + ( self.Owner:GetAimVector() * 32 ) ) )
explode:SetOwner( self.Owner )
explode:Spawn()
explode:SetKeyValue( "iMagnitude", "2000" )
explode:Fire( "Explode", 0, 0 )
end
end
Any tips/help would be greatly appreciated!

(I'm kinda new to Lua)
Edit: Problem has been solved, I made it check if it was client and valid:
self:EmitSound("punch.wav", 100, 100, 1, CHAN_WEAPON )
self:PrimaryAttack( true )
if ( CLIENT ) then return end
local explode = ents.Create( "env_explosion" )
if ( !IsValid( explode ) ) then return end
explode:SetPos( ( self.Owner:EyePos() + ( self.Owner:GetAimVector() * 32 ) ) )
explode:SetOwner( self.Owner )
explode:Spawn()
explode:SetKeyValue( "iMagnitude", "600" )
explode:Fire( "Explode", 0, 0 )
end