Már majdnem kész minden. Működik EP64-en és EP128-on is. Egyelőre tájékoztatás miatt kiírja induláskor, milyen gépet érzékelt maga alatt a program (az IN(176) alapján).
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]
A sebesség is szinte teljesen ugyanaz most már EP64-en és EP128-on. Nem teljesen, de majdnem. Annyit csinál, hogy a várakoztatási ciklus változóját elfelezi, ha EP64-es a gép.
A drágakövek (varázstabletták) felvételekor fényeffekt is van, ami függ attól is, hogy a kapu éppen kinyílt vagy bezáródott, vagy éppen még semmi nem történt.
A szörnyekkel való ütközéskor megváltozik a paletta, sötétebb lesz utána a játéktér. Minél többször ütközünk a szörnyekkel, annál sötétebb lesz. Ha varázstablettát felveszünk, visszaáll az eredeti paletta.
Ami még nem jó: a menübe megpróbáltam palettaváltoztatós "animációt" is betenni (ugyanazt, mint játék közben a drágakövek felvételénél). Eléggé nyakatekerten oldottam meg anno a várakozást a menüben, hogy a zene is szóljon és ne teljen be a hangbuffer, de ne is fogyjon el a zene, ne akadozzon. Ez most még rosszabb, mert az animáció is lassít. A várakozáshoz a ZENE1, ZENE2 és KES változót is használja, ami már túl sok és nehéz eligazodni köztük. Az lenne a lényeg, hogy a zene indulásakor még ne várakozzon, amíg nincs elég hang a hangbufferben, mert akkor szaggatni fog. Utána figyelni kell arra is, hogy ha elfogynak a hangok, de még szól a zene, akkor is várakozzon, és hogy ne legyen túl sok hang egyszerre, amitől ha betelik a hangbuffer, megakad az animáció és a tűzgomb figyelése is akadozik. Lehet, teljesen át kéne írni az egész menüvárakozást. Még próbálkozom. Ha valakinek van ötlete, átírhatja / jöhetnek javaslatok. Eddig így néz ki. A FAD1, FAD2 tömbben a színkódok vannak az elhalványításhoz, a PULSE változó pedig ahhoz kell, hogy 1-8-ig állítsa át a színeket a tömb tartalma alapján. Kérdéses, hogy a 2060-as sor kell-e egyáltalán:
1880 RESTORE 2080
1890 CLEAR SOUND
1900 LET ZENE,ZENE2=0:LET KES=4:LET PULSE=0
1910 IF ZENE2<10 THEN GOTO 1930
1920 IF ZENE2>57 OR KES<11 THEN GOTO 1980
1930 LET KES=0:LET ZENE2=ZENE2+1
1940 READ X,GY,Y
1950 SOUND PITCH X,DURATION Y,SOURCE 0,STYLE 64,ENVELOPE 20,SYNC 2
1960 SOUND PITCH GY+12,DURATION Y,SOURCE 1,ENVELOPE 20,SYNC 2,LEFT 32,RIGHT 64
1970 SOUND SOURCE 3,STYLE 134,DURATION Y,SYNC 2,LEFT 64,RIGHT 16,ENVELOPE 20
1980 LET KES=KES+1
1990 LET ZENE=ZENE+1
2000 IF ZENE=1800 THEN
2010 CLEAR SOUND
2020 LET ZENE2,ZENE,KES=0
2030 RESTORE 2080
2040 END IF
2042 IF KES=6 THEN
2043 LET PULSE=PULSE+1
2044 IF PULSE<9 THEN SET #102:PALETTE 76,169,245,FAD1(PULSE)
2045 IF PULSE>8 THEN SET #102:PALETTE 76,FAD2(PULSE-8),245,175
2046 IF PULSE=16 THEN LET PULSE=0
2047 END IF
2050 IF USR(PRJOY,0)<>3 THEN LET ST=USR(PRJOY,0):CLEAR SOUND:GOTO 420
2060 LET WWW=4:CALL WARTEN
2070 GOTO 1910