From 58dfd3884cb769e2ffa5245a4c24b5bdecacdb70 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Mon, 16 Aug 2010 22:02:34 +0000 Subject: cleaned up read_pixel code to use get_visual() --- (limited to 'TurtleArt/sprites.py') diff --git a/TurtleArt/sprites.py b/TurtleArt/sprites.py index 6ecdd8d..8bbe18b 100644 --- a/TurtleArt/sprites.py +++ b/TurtleArt/sprites.py @@ -423,12 +423,13 @@ class Sprite: return(-1, -1, -1, -1) image = self.images[i].get_image(x, y, 1, 1) pixel = image.get_pixel(0, 0) + visual = self.images[i].get_visual() + r = int((pixel & visual.red_mask) >> visual.red_shift) + g = int((pixel & visual.green_mask) >> visual.green_shift) + b = int((pixel & visual.blue_mask) >> visual.blue_shift) + # Rescale to 8 bits if mode == '565': - r = int(((pixel >> 11) & 0x1f) < 3) - g = int(((pixel >> 5) & 0x3f) < 2) - b = int((pixel & 0x1f) < 3) - else: - r = int((pixel & 0xff0000) >> 16) - g = int((pixel & 0x00ff00) >> 8) - b = int((pixel & 0x0000ff)) + r = r << 3 + g = g << 2 + b = b << 3 return(r, g, b, 0) -- cgit v0.9.1