| Author | Message | 
        
			| Siric 
					Joined: Wed Oct 25, 2006 7:57 pm
 Posts: 240
 Location: Out there, among the stars.
   |   Reversing VelocityHow would you make Pixels/MOSrotatings in a Certain radius go in the Opposite Direction they were originally going? 
 
 | 
		
			| Tue Jun 09, 2009 7:51 am | 
					
					   | 
	
	
		|  | 
	
			| Grif REAL AMERICAN HERO 
					Joined: Sat Jan 27, 2007 10:25 pm
 Posts: 5655
   |   Re: Reversing Velocityif math.abs(target.Pos.X - self.Pos.X) < 30 and math.abs(target.pos.Y - self.Pos.Y) < 30 thentarget.Vel = target.Vel * -1;
 end
 
 
 | 
		
			| Tue Jun 09, 2009 7:53 am | 
					
					   | 
	
	
		|  | 
	
			| mail2345 
					Joined: Tue Nov 06, 2007 6:58 am
 Posts: 2054
   |   Re: Reversing VelocityCode: for particle in MovableMan.Particlesdo
 if math.sqrt(math.pow((particle.Pos.X-self.Pos.X),2) + math.pow((particle.Pos.Y - self.Pos.Y),2)) < <radius> then
 particle.Vel = Vector(particle.Vel.X * -1, particle.Vel.Y * -1)
 end
 end
 
EDIT: Got ninjaed by grif. Wait, you can multiply vectors?
 
 | 
		
			| Tue Jun 09, 2009 7:55 am | 
					
					   | 
	
	
		|  | 
	
			| Siric 
					Joined: Wed Oct 25, 2006 7:57 pm
 Posts: 240
 Location: Out there, among the stars.
   |   Re: Reversing VelocityThanks Grif, I will try that. 
 
 | 
		
			| Tue Jun 09, 2009 7:58 am | 
					
					   | 
	
	
		|  | 
	
			| CrazyMLC 
					Joined: Fri Dec 22, 2006 4:20 am
 Posts: 4772
 Location: Good news everyone!
   |   Re: Reversing VelocityNice shield code.
 Would want to make it
 f math.abs(target.Pos.X - self.Pos.X) < 30 and math.abs(target.pos.Y - self.Pos.Y) < 30 then
 target.Vel = target.Vel * -0.3;
 
 
 | 
		
			| Tue Jun 09, 2009 8:57 am | 
					
					     | 
	
	
		|  | 
	
			| Geti 
					Joined: Sun Jul 13, 2008 9:57 am
 Posts: 4886
 Location: some compy
   |   Re: Reversing Velocitywhy is everyone using freaking Pythagoras when there is a perfectly good vector.Magnitude variable?seriously, math.abs(self.Pos.Magnitude - particle.Pos.Magnitude) works brilliantly.
 
 
 | 
		
			| Tue Jun 09, 2009 9:06 am | 
					
					     | 
	
	
		|  | 
	
			| CrazyMLC 
					Joined: Fri Dec 22, 2006 4:20 am
 Posts: 4772
 Location: Good news everyone!
   |   Re: Reversing VelocityI wish I understood that.Does that basically make it stop?
 
 
 | 
		
			| Tue Jun 09, 2009 9:07 am | 
					
					     | 
	
	
		|  | 
	
			| piipu 
					Joined: Mon Jun 30, 2008 9:13 pm
 Posts: 499
 Location: Finland
   |   Re: Reversing VelocityGeti wrote: why is everyone using freaking Pythagoras when there is a perfectly good vector.Magnitude variable?seriously, math.abs(self.Pos.Magnitude - particle.Pos.Magnitude) works brilliantly.
I believe the reason for this is because triangles don't work that way.  Lets say we have two objects, the coordinates of which are (0,100) and (300,0). Your method gives a distance of (300 - 100) = 200. Pythagoras gives us the real distance which is sqrt((300 - 0) ^ 2 + (0 - 100) ^ 2) = 316.227766... which is not 200.
 
 | 
		
			| Tue Jun 09, 2009 9:36 am | 
					
					   | 
	
	
		|  | 
	
			| Siric 
					Joined: Wed Oct 25, 2006 7:57 pm
 Posts: 240
 Location: Out there, among the stars.
   |   Re: Reversing VelocityNone of the Code Snippets worked, No errors in the console, I have no idea whats wrong. 
 
 | 
		
			| Tue Jun 09, 2009 12:27 pm | 
					
					   | 
	
	
		|  | 
	
			| piipu 
					Joined: Mon Jun 30, 2008 9:13 pm
 Posts: 499
 Location: Finland
   |   Re: Reversing VelocityThat's maybe because the radius of the effect is too small, the velocity gets reversed again the next frame, or there's something else wrong with your shield. If the script is directly attached to the shield, it will only work if the shield is not held by anyone. 
 
 | 
		
			| Tue Jun 09, 2009 1:34 pm | 
					
					   | 
	
	
		|  | 
	
			| Siric 
					Joined: Wed Oct 25, 2006 7:57 pm
 Posts: 240
 Location: Out there, among the stars.
   |   Re: Reversing Velocitypiipu wrote: If the script is directly attached to the shield, it will only work if the shield is not held by anyone.Is it possible to make it work while held?
 
 | 
		
			| Tue Jun 09, 2009 1:36 pm | 
					
					   | 
	
	
		|  | 
	
			| CrazyMLC 
					Joined: Fri Dec 22, 2006 4:20 am
 Posts: 4772
 Location: Good news everyone!
   |   Re: Reversing VelocityI don't think so, its the same deal with guns, you can't touch them when they're on an actor. 
 
 | 
		
			| Tue Jun 09, 2009 1:38 pm | 
					
					     | 
	
	
		|  | 
	
			| Siric 
					Joined: Wed Oct 25, 2006 7:57 pm
 Posts: 240
 Location: Out there, among the stars.
   |   Re: Reversing VelocityWhat if I added a Null sprited attachment and ran the script on it?I forget if you can put attachments on HeldDevices.
 
 
 | 
		
			| Tue Jun 09, 2009 1:44 pm | 
					
					   | 
	
	
		|  | 
	
			| CrazyMLC 
					Joined: Fri Dec 22, 2006 4:20 am
 Posts: 4772
 Location: Good news everyone!
   |   Re: Reversing VelocityNice Idea.I think that would work, if not, you could also have an emitter on it, and apply the code to the MOPixels.
 
 
 | 
		
			| Tue Jun 09, 2009 1:45 pm | 
					
					     | 
	
	
		|  | 
	
			| piipu 
					Joined: Mon Jun 30, 2008 9:13 pm
 Posts: 499
 Location: Finland
   |   Re: Reversing VelocityThe script needs to be in something that's not attached to anything. CC can't run lua from attachables at the moment. 
 
 | 
		
			| Tue Jun 09, 2009 1:53 pm | 
					
					   | 
	
	
		|  | 
	
	
		|  |