anchor.diff:      (draw  *selection-rectangle*)))
   
   (defun bind-texture (thing identifier use-shader)
  -  
  +
     (let ((texture (if (or
                         (not (owned thing))
                         (symbolp (owner thing)))
                        (gethash identifier *textures*) ;does not belong to a real player
                      (gethash identifier (textures (owner thing))))))
       (when texture
  -      (gl:active-texture 0)
  +      (gl:active-texture :texture0)
         (gl:bind-texture :texture-2d texture)
         (when use-shader
           (gl:uniformi (gl:get-uniform-location *current-shader* "base-texture") 0)))
  -      
  +
       texture))
     ;|#())
   
  
positive.code: 
  (defun set-projection ()
    ;sets the projection matrix appropriately
    ;needs to be called when window is being resized or *zoom*/*scroll* have changed 
    (gl:matrix-mode :projection)
    (gl:load-identity)
    (let* ((x (x *scroll*))
  
negative.code:   (unless %texture-chosen%
      (gl:bind-texture :texture-2d (aref *char-textures* (char-code #\?))))
   ; (print-vars entity)
    (gl:with-pushed-matrix
     ; (gl:scale (size-x thing) (size-y thing) 1)
      (gl:rotate (rot thing) 0 0 1)
      (gl:scale (size-x thing) (size-y thing) 1)
      (draw-quad)))
  
  (defmethod draw ((rectangle rectangle)) ;todo: no copypaste :)
    (gl:with-pushed-matrix
      (gl:rotate (rot rectangle) 0 0 1)
      (gl:scale (size-x rectangle) (size-y rectangle) 1)
      (destructuring-bind (r g b a) (color rectangle)
  