Приложения__________________________________ 253
CASE 13: а(4) = CHR$(249) + "KING " + CHR$ (249) END SELECT a(5) = a(3): a(6) = a(2)
END IF END IF j% = row%
FOR i% = 1 TO 7 'показ карты LOCATE j%, clmn% PRINT a(i%) ;
j% = j% + 1 NEXT it COLOR 7, 0 RETURN 'показ стопки showcards:
SELECT CASE ish% 'выбор позиции по номеру стопки CASE I TO 7: row% = 2: clmn% = 8 * ish% + 2 CASE 8: rowt = 2: clmn% = 2 CASE 9 ТО 10: row% = 2: clmn% = 8 * ish% - 6 CASE 11 ТО 12: row% = 10: clmn% = 8 * ish% - 22 CASE 13: row% = 10: clmn% = 2 END SELECT
last% = ptrs(ish%) 'количество карт в стопке IF last% = О THEN 'при пустой стопке card% = 60 'код места для стопки GOSUB drawcard ELSE
IF ish% < 8 THEN 'для верхнего ряда стопок
FOR jsh% = 1 ТО last% - 1 'с первой карты до предпоследней card% == stacks(ish%, jsh%) "код карты IF card% > 0 THEN GOSUB drawcard: row% = row% + 1 NEXT jsh% END IF
card% = stacks(ish%, last%) "код верхней карты GOSUB drawcard END IF RETURN
'чтение номера стека и позиции в стеке readpos:
mymouse(16) = 3 'читать состояние курсора DO
ist% = 0
CALL absolute(mouseptr&)
IF mymouse(17) * oldm% > 0 THEN
'срабатывает в момент нажатия i% = mymouse(18): j% = mymouse(19) IF j% > 160 THEN enough% = 1: RETURN
'выход по желанию игрока IF i% MOD 64 > О AND j% > 0 THEN
i% = i% \ 64 ' определение позиции по горизонтали SELECT CASE i% 'определение позиции по вертикали CASE I TO 7 'для стеков с 1 по 7 temp% = ptrs(i%) IF temp% > 0 THEN 'стек не пустой