I'm going to attempt to solve Z-Buffering like this:
Add a grid of numbers the size of the applet, One number per pixel. Now each time i draw a pixel I'm going to put the depth of that pixel into the grid. If the depth of the new pixel is higher than the depth of the old pixel I'm not going to draw it, otherwise i will.
To find the depth of a pixel in a triangle I will interpolate between the three vertex depths of the triangle, I'm not sure how yet.
I just finished a school project so ill have a lot more spare time. I plan to have Z-Buffering finished by Saturday or Sunday.