home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2002 November / VPR0211A.ISO / OLS / JED194V / JEDDOC.LZH / GAME.MCR < prev    next >
Text File  |  1994-07-10  |  3KB  |  128 lines

  1. ;**********************************************************
  2. ;    JED マクロサンプル
  3. ;    'GAME.MCR'
  4. ;    [テトリス(R)もどきのゲームマクロ]
  5. ;    Ver 0.10    初版
  6. ;        0.20    May 1993 ... JED V0.6e以降に対応
  7. ;        0.30    一部変更 ... JED Ver1.40以降
  8. ;        0.40    Jly 1994 ... 枠線コード変更
  9. ;
  10. ;    Written by H.Orikawa 1993, 94
  11. ; 注)このマクロはVZ付属のサンプルマクロを参考にした。
  12. ;
  13. ;   *VZ は(株)Village Centerの市販エディタです。
  14. ;**********************************************************
  15. ;
  16. ;【遊び方】
  17. ; [CTRL]+[\]    :開始
  18. ;
  19. ; [1]<-->[3]    :ブロックを左右に移動
  20. ; [2]        :ブロックを回転
  21. ; [SPACE]    :ブロックを落下
  22. ; [ESC]        :ポーズ
  23. ; [Q]        :中止
  24.  
  25. ;注)1.乱数発生しないので出現パターンは毎起動時同じ。
  26. ;  2.&b(n)はnの値に関係なく常に一定。
  27. ;  3.桁ゲージは非表示にしておくこと。
  28.  
  29.     rr = 1,
  30.     (mi)? #v    ;上書きモードだったら挿入モードにする
  31.     uu=10, u=20-uu/2, bb=10, f=g=0, 
  32.     #68        ;auto indent on
  33.     &v(0)        ;Cursor off
  34.     >20
  35.  
  36. 01:    (c)?{ &o(c) #s . }
  37.     (cd!=' ')?{ e+, &q }
  38.  
  39. 10:    e-, &01 (t)>?{ >+1 >+2 >+3 >+4 >+5 >+6 >+7 }
  40.  
  41. 11:    #d &01 #e &01 #s &01 #x
  42. 12:    (d&1)?{ #s &01 #d #d &01 #d &01 #s #s .}
  43.         #x &01 #e #e &01 #e &01 #x #x
  44. 13:    (d&1)?{ #d &01 #s #e &01 #s &01 #x #d .}
  45.         #e &01 #d &01 #e &01 #x #s #x
  46. 14:    (d&1)?{ #d &01 #s #x &01 #s &01 #d #e .}
  47.         #e &01 #x #d &01 #x &01 #e #s
  48. 15:    (d!=0)?{ #d &01 #s } (d!=1)?{ #e &01 #x }
  49.     (d!=2)?{ #s &01 #d } (d!=3)?{ #x &01 #e }
  50. 16:    #d (d&1)?? &01 #e (d==0)? &01 #s (d&1)? &01 #s (d==1)? &01
  51.     #x (d&1)?? &01 #x (d==2)? &01 #d (d&1)? &01 #d (d==3)? &01 #e #s
  52. 17:    #d (d&1)?? &01 #e (d==3)? &01 #s (d&1)? &01 #s (d==0)? &01
  53.     #x (d&1)?? &01 #x (d==1)? &01 #d (d&1)? &01 #d (d==2)? &01 #e #s
  54.  
  55. 20:    &s #39 #n #n #18
  56.     (u*2-2){' '}
  57.     '◇' (uu){'-'} '◇' #m
  58.     '§' (uu){' '} '§' #m
  59.     '◇' (uu){'='} '◇'
  60.      &d #e #k #68 #<    (wy-5){ #p } #i    (mi)?? #v >>    ;overwrite
  61.  
  62. 21:    vv=100-f/2, (vv<bb)? {vv=bb,}
  63.     &m( "Best score %-5u Score %-5u Delay %-5u", h, g, vv ) >>
  64.  
  65. 22:    &s x=u+4, &y(y=4) &x(x*2)
  66.     rr+=12, t=rr%7, rr+=56, d=rr&3,    rr++,    ;適当に設定している
  67.     (c-)&10 (e)?{ (c='□')&10 >30 } >>
  68.  
  69. 23:    v=vv, >>
  70.  
  71. 24:    xx=yy=dd=0,
  72.     (c='□')&10 &d &s
  73. :A    &k k=r,
  74.     (k==$1B)?{ &d !92 &s >A }
  75.     (v<0)? >>
  76.     (v--)??{ &b(1) >> }
  77.     (k)?? >A
  78.     &f(k,"Qq312 ")
  79.     (r)>?{ >40 >40 (xx+) (xx--) (dd+) { v=-1, &b(2) >> } } >+2
  80.     >A
  81.  
  82. 25:    yy+,>>
  83. 26:    (v>0)?{ v-=4, (v<1)? (v=1) }
  84.     (c=' ')&10
  85.     (yy)?{ &y(y+=yy) }
  86.     (xx)?{ x+=xx, &x(x*2) }
  87.     d=(d+dd)&3,
  88.     (c-)&10 (e)??{ (v)? >-2 >-3 }
  89.     &y(y-=yy)
  90.     x-=xx, &x(x*2)
  91.     d=(d-dd)&3,
  92.     (yy)?? >-3
  93.  
  94.     (c='■')&10 &d &s
  95.     &y(y=2)
  96. :Y    &x(u*2) (x=uu)
  97. :X    (cd=='■')?{ #d (x--)? >X &x(u*2) (uu){'☆'} }
  98.     #x ((y++)<wy-2)? >Y &d
  99.     &s ff-, &y(y=2) &x(u*2)
  100. :Z    (cd=='☆')?{
  101.         #y &y(2) #k #i &y(y) g++,ff+, &d &s
  102.         &b(2) &b(2)
  103.     }
  104.     #x ((y++)<wy-2)? >Z
  105.     &d (ff)? (f++) >21
  106.  
  107. 30:    (g>h)? (h=g)
  108.     f=g=0,
  109.     &d
  110.     &b(4) &b(16)
  111.     !91 (r==(-1))? >>
  112.     #39 #x #k #< (wy-3){ #p } &s #40 (wy-3){ #y } &d >21
  113.  
  114. 40:    &d #39 #x (wy-2){ #y } #e #y #y
  115.     &m("                                        ")
  116.     (mi)? #v
  117.     &v(1)        ;カーソル表示
  118.     /
  119.  
  120. ;メニュー
  121. 91:    "",22,1
  122.     " GAME  OVER "
  123.     .
  124.  
  125. 92:    "",14,1
  126.     " PAUSE "
  127.     .
  128.