home *** CD-ROM | disk | FTP | other *** search
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;; ;;;;;;;;
- ;;;;;;;; Example Shape #8 - Shape #4 animated using ;;;;;;;;
- ;;;;;;;; IFSEM to call the frames & using the same ;;;;;;;;
- ;;;;;;;; VERTEX reference numbers for each frame. ;;;;;;;;
- ;;;;;;;; ;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- SHAPE 10000
-
- ;;;;;;;;;vertex list;;;;;;;;;;;;;;;;;;;;;;
-
- VERTEX 01,30,-15,+90
- VERTEX 02,30,+15,+90
- VERTEX 03,30,+10,-70
- VERTEX 04,30,-15,-90
-
- VERTEX 05,030,-5,+40
- VERTEX 08,030,-5,-20
- VERTEX 09,030,+5,+40
- VERTEX 10,030,+5,-20
-
- VERTEX 101,-30,-15,+90
- VERTEX 102,-30,+15,+90
- VERTEX 103,-30,+10,-70
- VERTEX 104,-30,-15,-90
-
- VERTEX 105,-030,-5,+40
- VERTEX 108,-030,-5,-20
- VERTEX 109,-030,+5,+40
- VERTEX 110,-030,+5,-20
-
- VERTEX 100,0,5,120
-
- VERTEX 200,00,-15,-50
- VERTEX 201,+5,-15,-90
- VERTEX 202,00,-50,-110
- VERTEX 203,-5,-15,-90
-
- ;;;;;;;;;condition list;;;;;;;;;;;;;;;;;;;
-
- IFSEM=0 GOSUB frame_0 ;All these IFSEM commands check the value of
- IFSEM=1 GOSUB frame_1 ;the SEM flags (as set by the PARENT PROGRAM)
- IFSEM=2 GOSUB frame_2 ;If no flags are set (1st line) then the label
- IFSEM=3 GOSUB frame_3 ;"frame_0" is jumped to. If the 1st flag alone
- IFSEM=4 GOSUB frame_4 ;is set, "frame_1" is jumped to. if the 2nd
- IFSEM=5 GOSUB frame_5 ;flag alone is set, "frame_2" is jumped to. If
- IFSEM=6 GOSUB frame_6 ;flags 1+2 alone are set then "frame_3" is
- IFSEM=7 GOSUB frame_7 ;jumped to etc...
- IFSEM=8 GOSUB frame_8 ;The modules being jumped to simply contain the
- IFSEM=9 GOSUB frame_9 ;same four vertices that define the left and
- IFSEM=10 GOSUB frame_10 ;right wing tips, but in different positions.
- IFSEM=11 GOSUB frame_11 ;Because only one of the modules can be called
- IFSEM=12 GOSUB frame_12 ;at any one time during the course of the main
- IFSEM=13 GOSUB frame_13 ;program loop it is quite safe to reference the
- IFSEM=14 GOSUB frame_14 ;same vertices many times without fear of
- IFSEM=15 GOSUB frame_15 ;causing a "DUPLICATE VERTEX" error.
- IFSEM=16 GOSUB frame_16 ;
- IFSEM=17 GOSUB frame_17 ;There are 21 frames called in this example,
- IFSEM=18 GOSUB frame_18 ;but anything up to 256 is possible.
- IFSEM=19 GOSUB frame_19 ;
- IFSEM=20 GOSUB frame_20 ;
-
- IFVIS 4,1,2 GOTO right_view ;The comments and notes that accompany
- IFVIS 102,101,104 GOTO left_view ;these lines can be found in EXAMPLE#4
- ;which is where these lines and the
- GOSUB left_wing ;facet lists below originally came from.
- GOSUB right_wing ;
- GOTO body ;
- ;
- right_view: ;
- GOSUB left_wing ;
- GOSUB body ;
- GOTO right_wing ;
- ;
- left_view: ;
- GOSUB right_wing ;
- GOSUB body ;
- GOTO left_wing ;
- ;
- ;;;;;;;;;modules;;;;;;;;;;;;;;;;;;;;;;; ;
- ;
- body: ;
- DRWPOLY 31,1,4,104,101 ;
- DRWPOLY 30,200,201,202 ;
- DRWPOLY 29,202,203,200 ;
- DRWPOLY 33,202,201,203 ;
- DRWPOLY 33,1,2,3,4 ;
- DRWPOLY 33,103,102,101,104 ;
- DRWPOLY 35,104,4,3,103 ;
- DRWPOLY 36,103,3,2,102 ;
- DRWPOLY 30,100,1,101 ;
- DRWPOLY 32,100,2,1 ;
- DRWPOLY 32,100,101,102 ;
- DRWPOLY 34,100,102,2 ;
- RETURN ;
- ;
- left_wing: ;
- DRWPOLY 34,106,109,105 ;
- DRWPOLY 36,108,110,107 ;
- DRWPOLY 32,108,107,106,105 ;
- DRWPOLY 37,106,107,110,109 ;
- RETURN ;
- ;
- right_wing: ;
- DRWPOLY 34,05,09,06 ;The comments and notes that accompany
- DRWPOLY 36,07,10,08 ;these lines can be found in EXAMPLE#4
- DRWPOLY 32,06,07,08,05 ;which is where these lines and the
- DRWPOLY 37,10,07,06,09 ;condition lists above originally came
- RETURN ;from.
-
- ;;;;;;;;;animation modules;;;;;;;;;;;;;;;
-
- frame_0: VERTEX 106,-130,50,10 ;This module or one of the following twenty can be
- VERTEX 107,-130,50,-30 ;called by setting the correct SEM flags. Each one
- VERTEX 006,130,50,10 ;describes the wing tips in a different position
- VERTEX 007,130,50,-30 ;so when called in sequence by the PARENT PROGRAM
- RETURN ;the wings are made to move. (ANIMATION !!)
-
- frame_1: VERTEX 106,-130,45,10
- VERTEX 107,-130,45,-30
- VERTEX 006,130,45,10
- VERTEX 007,130,45,-30
- RETURN
-
- frame_2: VERTEX 106,-130,40,10
- VERTEX 107,-130,40,-30
- VERTEX 006,130,40,10
- VERTEX 007,130,40,-30
- RETURN
-
- frame_3: VERTEX 106,-130,35,10
- VERTEX 107,-130,35,-30
- VERTEX 006,130,35,10
- VERTEX 007,130,35,-30
- RETURN
-
- frame_4: VERTEX 106,-130,30,10
- VERTEX 107,-130,30,-30
- VERTEX 006,130,30,10
- VERTEX 007,130,30,-30
- RETURN
-
- frame_5: VERTEX 106,-130,25,10
- VERTEX 107,-130,25,-30
- VERTEX 006,130,25,10
- VERTEX 007,130,25,-30
- RETURN
-
- frame_6: VERTEX 106,-130,20,10
- VERTEX 107,-130,20,-30
- VERTEX 006,130,20,10
- VERTEX 007,130,20,-30
- RETURN
-
- frame_7: VERTEX 106,-130,15,10
- VERTEX 107,-130,15,-30
- VERTEX 006,130,15,10
- VERTEX 007,130,15,-30
- RETURN
-
- frame_8: VERTEX 106,-130,10,10
- VERTEX 107,-130,10,-30
- VERTEX 006,130,10,10
- VERTEX 007,130,10,-30
- RETURN
-
- frame_9: VERTEX 106,-130,5,10
- VERTEX 107,-130,5,-30
- VERTEX 006,130,5,10
- VERTEX 007,130,5,-30
- RETURN
-
- frame_10 VERTEX 106,-130,0,10
- VERTEX 107,-130,0,-30
- VERTEX 006,130,0,10
- VERTEX 007,130,0,-30
- RETURN
-
- frame_11 VERTEX 106,-130,-5,10
- VERTEX 107,-130,-5,-30
- VERTEX 006,130,-5,10
- VERTEX 007,130,-5,-30
- RETURN
-
- frame_12 VERTEX 106,-130,-10,10
- VERTEX 107,-130,-10,-30
- VERTEX 006,130,-10,10
- VERTEX 007,130,-10,-30
- RETURN
-
- frame_13 VERTEX 106,-130,-15,10
- VERTEX 107,-130,-15,-30
- VERTEX 006,130,-15,10
- VERTEX 007,130,-15,-30
- RETURN
-
- frame_14 VERTEX 106,-130,-20,10
- VERTEX 107,-130,-20,-30
- VERTEX 006,130,-20,10
- VERTEX 007,130,-20,-30
- RETURN
-
- frame_15 VERTEX 106,-130,-25,10
- VERTEX 107,-130,-25,-30
- VERTEX 006,130,-25,10
- VERTEX 007,130,-25,-30
- RETURN
-
- frame_16 VERTEX 106,-130,-30,10
- VERTEX 107,-130,-30,-30
- VERTEX 006,130,-30,10
- VERTEX 007,130,-30,-30
- RETURN
-
- frame_17 VERTEX 106,-130,-35,10
- VERTEX 107,-130,-35,-30
- VERTEX 006,130,-35,10
- VERTEX 007,130,-35,-30
- RETURN
-
- frame_18 VERTEX 106,-130,-40,10
- VERTEX 107,-130,-40,-30
- VERTEX 006,130,-40,10
- VERTEX 007,130,-40,-30
- RETURN
-
- frame_19 VERTEX 106,-130,-45,10
- VERTEX 107,-130,-45,-30
- VERTEX 006,130,-45,10
- VERTEX 007,130,-45,-30
- RETURN
-
- frame_20 VERTEX 106,-130,-50,10
- VERTEX 107,-130,-50,-30
- VERTEX 006,130,-50,10
- VERTEX 007,130,-50,-30
- RETURN
-
- END
-
-