Here's an example of the new PacMan graphics. They are 40x40 and once decided the exact size they will be scaled to we will incorporate them. I was thinking of 20x20 but that may be too small. We may have to go a bigger window like 1200 x 800 and keep them as 40x40. Anyway here's a demo of them.
REM
DEFLNG A-Z
Sprites& = _LOADIMAGE("Pacmanss-2-40x40.bmp", 32)
Video& = _NEWIMAGE(640, 480, 32)
SCREEN Video&
GPlace = 1: gx = 320: gy = 10: GCycle = 0
PPlace = 1: px = 320: py = 100: PCycle = 0
DO
_LIMIT 30
GOSUB GMove
GOSUB PMove
CLS
GCycle = GCycle + 1: IF GCycle = 3 THEN GCycle = 1
PCycle = PCycle + 1: IF PCycle >= 4 THEN PCycle = 1
'move ghost
SELECT CASE GPlace
CASE 1 '-----------------------------------------------------------------------------Face right
IF GCycle = 1 THEN
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (82, 0)-(121, 39)
ELSE
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (123, 0)-(162, 39)
END IF
CASE 2 '-----------------------------------------------------------------------------Face down
IF GCycle = 1 THEN
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (246, 0)-(285, 39)
ELSE
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (287, 0)-(326, 39)
END IF
CASE 3 '-----------------------------------------------------------------------------Face left
IF GCycle = 1 THEN
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (0, 0)-(39, 39)
ELSE
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (41, 0)-(80, 39)
END IF
CASE 4 '-----------------------------------------------------------------------------Face up
IF GCycle = 1 THEN
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (164, 0)-(203, 39)
ELSE
_PUTIMAGE (gx, gy)-(gx + 39, gy + 39), Sprites&, Video&, (205, 0)-(244, 39)
END IF
END SELECT
'move pac man
SELECT CASE PPlace
CASE 1
IF PCycle = 1 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (164, 164)-(203, 203)
IF PCycle = 2 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (205, 164)-(244, 203)
IF PCycle = 3 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (246, 164)-(285, 203)
CASE 2
IF PCycle = 1 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (164, 164)-(203, 203)
IF PCycle = 2 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (205, 164)-(244, 203)
IF PCycle = 3 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (246, 164)-(285, 203)
CASE 3
IF PCycle = 1 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (203, 164)-(164, 203)
IF PCycle = 2 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (244, 164)-(205, 203)
IF PCycle = 3 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (285, 164)-(246, 203)
CASE 4
IF PCycle = 1 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (203, 164)-(164, 203)
IF PCycle = 2 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (244, 164)-(205, 203)
IF PCycle = 3 THEN _PUTIMAGE (px, py)-(px + 39, py + 39), Sprites&, Video&, (285, 164)-(246, 203)
END SELECT
_DISPLAY
LOOP UNTIL _KEYDOWN(27)
SLEEP
SYSTEM
GMove:
SELECT CASE GPlace
CASE 1
gx = gx + 4
IF gx >= 590 THEN gx = 590: GPlace = 2
CASE 2
gy = gy + 4
IF gy >= 430 THEN gy = 430: GPlace = 3
CASE 3
gx = gx - 4
IF gx <= 10 THEN gx = 10: GPlace = 4
CASE 4
gy = gy - 4
IF gy <= 10 THEN gy = 10: GPlace = 1
END SELECT
RETURN
PMove:
SELECT CASE PPlace
CASE 1
px = px + 4
IF px >= 540 THEN px = 540: PPlace = 2
CASE 2
py = py + 4
IF py >= 380 THEN py = 380: PPlace = 3
CASE 3
px = px - 4
IF px <= 100 THEN px = 100: PPlace = 4
CASE 4
py = py - 4
IF py <= 100 THEN py = 100: PPlace = 1
END SELECT
RETURN
Here's the url to the image:
http://dl.dropbox.com/u/10291175/PacManSS-2-40x40.rar