home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 63 / CDACTUAL63.iso / Aplicaciones / DarkBasic / DemoDarkBasic.exe / help / tutorial / programs / sample10 / sample10.dba < prev    next >
Encoding:
Text File  |  1999-12-03  |  1.2 KB  |  55 lines

  1. Rem * Title  : Tutorial Sample 10
  2. Rem * Author : DBS-LB
  3. Rem * Date   : 1/8/99
  4. rem Position camera off center
  5. POSITION CAMERA 0.0,0.0,-1000.0
  6.  
  7. rem Load 3D object and append walking data to it
  8. LOAD OBJECT "idle.x",1 : APPEND OBJECT "walk.x",1,100
  9. YROTATE OBJECT 1,180 : FIX OBJECT PIVOT 1
  10.  
  11. rem Loop 3D object animation from 0 to 20 (idle)
  12. LOOP OBJECT 1,0,20 : SET OBJECT SPEED 1,10
  13.  
  14. rem Activate manual syncronization
  15. SYNC ON
  16.  
  17. rem Begin loop
  18. DO
  19.  
  20. rem Modify character angle based on left/right keys
  21. stage=0
  22. IF LEFTKEY()=1 THEN a#=a#-8.0
  23. IF RIGHTKEY()=1 THEN a#=a#+8.0
  24. a#=wrapvalue(a#)
  25.  
  26. rem Modify character position based on up/down keys
  27. IF UPKEY()=1 THEN x#=NEWXVALUE(x#,a#,3) : z#=NEWZVALUE(z#,a#,3) : stage=1
  28. IF DOWNKEY()=1 THEN x#=NEWXVALUE(x#,a#,-3) : z#=NEWZVALUE(z#,a#,-3) : stage=1
  29.  
  30. rem If character action changes
  31. IF stage<>oldstage
  32.     IF stage=0
  33.         SET OBJECT FRAME 1,0.0
  34.         LOOP OBJECT 1,0,20
  35.         SET OBJECT SPEED 1,10
  36.     ENDIF
  37.     IF stage=1
  38.         SET OBJECT FRAME 1,105.0
  39.         LOOP OBJECT 1,105,125
  40.         SET OBJECT SPEED 1,40
  41.     ENDIF
  42.     oldstage=stage
  43. ENDIF
  44.  
  45. rem Update character position and angle
  46. POSITION OBJECT 1,x#,0.0,z#
  47. YROTATE OBJECT 1,a#
  48.  
  49. rem Refresh screen
  50. SYNC
  51.  
  52. rem End loop
  53. LOOP
  54.  
  55.