Author:  Nezura [ Sat May 01, 2004 8:20 pm ]
Post subject:  Explain code please =)

Could someone explain every line of this code? i get most of it but it'll be better if someone could go more indepth.

thanks

 code: function distance (x1, y1 : int) : int     result abs (x1 - y1) end distance var x1, y1, x2, y2, mb : int := 320 y1 := 200 loop     mousewhere (x2, y2, mb)     if x2 > x1 then         x1 += distance (x1, x2) div 10     else         x1 -= distance (x1, x2) div 10     end if     if y2 > y1 then         y1 += distance (y1, y2) div 10     else         y1 -= distance (y1, y2) div 10     end if     Draw.FillOval (x1, y1, 20, 20, 9)     delay (100)     cls     View.Update     end loop

 Author: GreenTiger [ Sat May 01, 2004 8:47 pm ] Post subject: Okay the first three lines are a function that can be run at any time in the program. WHen you call distance, it will output the ABSOLUTE value of x1-y1, that is, making it positive even if it's a negative. After the function, it calls the variables and starts them all off at 320, except for y1. Then, we enter a never-ending loop Inside this loop, it checks the mouse's position, and puts the x position in x2, the y in y2 and records if there's a mouse button press in mb. Keep in mind y is the vertical position while x is horizontal. Ok, then a bunch of if statements: if those conditions are true, it adds/subtracts the result of the distance function. IE: for the first one, the ABSOLUTE value of x1 - x2 divided by 10 After those if statements, it draws an oval centered at x1, y1, of a radius of 20 and colour 9 and delays, clears the screen and updates the view. One of those last two is redundant. From now on, highlight a term you don't understand and press F9 that should help you better than I can.

 Author: Nezura [ Sun May 02, 2004 1:22 pm ] Post subject: Thanks!!

 :