function Create(self) self.burst = CreateAEmitter("Explode Bullet 1 mk2.1") self.hasburst = false self.Timer = Timer() self.rayhit = Vector(0,0) self.raymiss = Vector(0,0) self.angle = self.RotAngle self.alpha = -0.25 self.beta = 5 end function Destroy(self) end function Update(self) if self.Timer:IsPastSimMS(750) then self.hasburst = true self:GibThis() elseif self.Timer:IsPastSimMS(20) then SceneMan:CastObstacleRay(self.Pos,(self.Vel/self.Vel.Magnitude)*750,self.rayhit,self.raymiss,-1,0,2); if ((self.rayhit - self.Pos).Magnitude) < 100 and self.hasburst == false and not self.rayhit:IsZero() then self.hasburst = true self:GibThis(); end end if self.hasburst then self.burst.RotAngle = self.Vel.AbsRadAngle self.burst.Vel = self.Vel*20; self.burst.Pos = self.Pos; MovableMan:AddParticle(self.burst); self.ToDelete = true self:GibThis(); end end function Update(self) self.angle = self.angle + self.alpha self.Pos = self.Pos + self.Vel.Perpendicular.Normalized * (math.sin(self.angle) * self.beta) end