Posted Sun Oct 2, 2011 9:48 PM
Posted Sun Oct 2, 2011 10:06 PM
while game is running read joystick update player do other stuff wend read joystick if up, dec y : set frame up if down, inc y : set frame down if left, dec x : dec frame if right, inc x : inc frame end update player CALL PATTERN frame CALL LOCATE x,y end
Posted Mon Oct 3, 2011 2:10 PM
Edited by RXB, Mon Oct 3, 2011 2:20 PM.
Posted Mon Oct 3, 2011 7:08 PM
Posted Tue Oct 4, 2011 10:47 AM
init:
base_frame = 128
curr_frame = 0
max_frame = 4
while game loop
player_input
draw_player
wend
player_input:
if no joystick
return
end if
if left
x -= 1
curr_frame -= 1
base_frame = 128
else if right
x += 1
curr_frame += 1
base_frame = 132
end if
if curr_frame < 0
curr_frame = max_frame - 1
else if curr_frame >= max_frame
curr_frame = 0
end if
end
draw_player
pattern base_frame + curr_frame
locate x,y
end
Posted Tue Oct 4, 2011 11:04 PM
Posted Wed Oct 5, 2011 1:56 AM

100 CALL SCREEN(6)::CALL CLEAR::CALL MAGNIFY(3)::DISPLAY AT(4,6):"WALK AND TALK DEMO"
110 DISPLAY AT(9,3):"SPRITE GRAPHICS BASED ON"::DISPLAY AT(11,7):"ZX SPECTRUM GAME"
120 DISPLAY AT(13,8):"""SIR LANCELOT"""::CALL SAY("#TEXAS INSTRUMENTS#")
200 CALL CHAR(36,"0000211311080B060C0606030100070360F038F8F8F0B8DC6CDCD89050D8ECEC")
210 CALL CHAR(40,"0008090B09080B060C0606030100070360F038F8F8F0B8DC6CDCD8B070DECEDC")
220 CALL CHAR(44,"0000010381601B060C0606030D0F070360F038F8F8F0B8DC6CDCD8BC47871E1C")
230 CALL CHAR(52,"060F1C1F1F0F1D3B363B1B090A1B3737000084C88810D060306060C08000E0C")
240 CALL CHAR(56,"060F1C1F1F0F1D3B363B1B0D0E7B733B001090D09010D060306060C08000E0C")
250 CALL CHAR(60,"060F1C1F1F0F1D3B363B1B3DE2E17838000080C08106D860306060C0B0F0E0C")
260 CALL SPRITE(#1,36,2,140,122)::DISPLAY AT(24,5):"USE JOYSTICK TO WALK"
300 ANIM=ABS(ANIM-4)::CALL JOYST(1,X,Y)::CALL MOTION(#1,0,X*2)
310 IF X<>0 THEN CALL PATTERN(#1,ANIM+X*2+48)::FACE=SGN(X+4)::GOTO 300
320 CALL PATTERN(#1,FACE*16+36)::GOTO 300
Posted Thu Oct 6, 2011 7:39 PM
Posted Thu Oct 6, 2011 10:34 PM
Posted Thu Oct 6, 2011 11:49 PM
orion1052003, on Thu Oct 6, 2011 7:39 PM, said:
300 ANIM=ABS(ANIM-4) 310 PRINT ANIM 320 GOTO 300
Posted Sat Oct 8, 2011 2:32 PM
Edited by orion1052003, Sat Oct 8, 2011 2:33 PM.
Posted Sat Oct 8, 2011 3:14 PM
Posted Sat Oct 8, 2011 3:20 PM
Posted Sat Oct 8, 2011 4:37 PM
Edited by RXB, Sat Oct 8, 2011 4:39 PM.
Posted Sat Oct 8, 2011 4:45 PM
Posted Sat Oct 8, 2011 11:54 PM
orion1052003, on Sat Oct 8, 2011 4:45 PM, said:
orion1052003, on Sat Oct 8, 2011 4:45 PM, said:
Posted Sun Oct 9, 2011 11:19 PM
Posted Mon Oct 10, 2011 12:22 AM
Edited by sometimes99er, Mon Oct 10, 2011 12:24 AM.
Posted Mon Oct 10, 2011 12:44 AM
Posted Mon Oct 10, 2011 12:52 AM
Posted Mon Oct 10, 2011 1:07 AM
Posted Mon Oct 10, 2011 2:49 AM
100 !TEST PROGRAM-USE CALL LOCATE WITH JOYST
110 P1=15 :: P2=10
120 CALL CLEAR :: CALL SCREEN(6)
130 A$=RPT$("F",16):: CALL CHAR(96,A$)
140 CALL SPRITE(#1,96,2,89,121)
150 DR=100 :: DC=100
160 CALL HCHAR(1,16,104)!UP
170 CALL HCHAR(24,16,112)!DOWN
180 CALL HCHAR(12,3,120)!LEFT
190 CALL HCHAR(12,30,128)!RIGHT
200 CALL JOYST(1,X,Y):: CALL MOTION(#1,-Y*4,X*4)
210 CALL COLOR(10,P1,P1,11,P1,P1,12,P1,P1,13,P1,P1)
220 R=R-Y/4 :: C=C+X/4
230 ! DR=DR-Y*4 :: DC=DC+X*4
240 CALL POSITION(#1,DR,DC)
260 ! CALL LOCATE(#1,DR,DC)
270 CALL KEY(1,K,S)
280 DISPLAY AT(16,1):"SAME KEY=0 NEW KEY=1 NO KEY PRESS=-1"
290 DISPLAY AT(18,5):"KEY= ";K;"STATUS= ";S
300 DISPLAY AT(20,1):"X= ";X;"Y= ";Y
310 DISPLAY AT(21,1):"R= ";R;"C= ";C
320 DISPLAY AT(22,1):"DR= ";DR;"DC= ";DC
330 IF Y=4 AND X=0 THEN CALL COLOR(10,P2,P2)
340 IF Y=0 AND X=4 THEN CALL COLOR(13,P2,P2)
350 IF Y=-4 AND X=0 THEN CALL COLOR(11,P2,P2)
360 IF Y=0 AND X=-4 THEN CALL COLOR(12,P2,P2)
370 GOTO 200
Edited by RXB, Mon Oct 10, 2011 2:54 AM.
Posted Mon Oct 10, 2011 9:30 PM
Posted Mon Oct 10, 2011 9:50 PM
Posted Mon Oct 10, 2011 9:51 PM
0 members, 0 guests, 0 anonymous users