function Create(self)
  self.ShootTimer = Timer()
  self.Clicked = false
  self.Durability = 5

  self.Damage = math.random(0,self.Durability)
end

function Update(self)
  if self.Magazine ~= nil then
    if self:IsActivated() then
      if self.Magazine.RoundCount > 0 and self.ShootTimer:IsPastSimMS(60000/self.RateOfFire) and self.Clicked == false then
        self.ShootTimer:Reset()
        self.Damage = self.Damage + 1
        if self.Damage > self.Durability then
          local damagePar = CreateMOPixel("Laser Damage");
          damagePar.Pos = self.MuzzlePos + self:RotateOffset(Vector(-math.random(0,self.Diameter/2),0))
          damagePar.Vel = self.Vel + self:RotateOffset(Vector(80,0))
          damagePar.Sharpness = 2000
          MovableMan:AddParticle(damagePar);
          self.Damage = 0
        end
        self.Clicked = true
      end
    else
      self.Clicked = false
    end
  else
    self.ShootTimer:Reset()
  end
end