home *** CD-ROM | disk | FTP | other *** search
/ ring.yamanashi.ac.jp/pub/pc/freem/action/ / action.zip / breaker_v300.zip / breaker_v300 / game.mdl < prev    next >
Text File  |  2008-10-27  |  10KB  |  423 lines

  1. ;ADVâéâWâàü[âï
  2. #include "hsp3util.as"
  3. #module
  4.  
  5. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\
  6. ;BOXû╜ù▀(ôûèYö═ê═é≡âëâCâôé┼ê═é▐ü^Älèpî`)
  7.     #deffunc box int,int,int,int
  8.         mref p1,0 ;xì╢
  9.         mref p2,1 ;yÅπ
  10.         mref p3,2 ;xëE
  11.         mref p4,3 ;yë║
  12.     
  13.         line p1,p2,p3,p2
  14.         line p1,p2,p1,p4
  15.         line p3,p2,p3,p4
  16.         line p1,p4,p3,p4
  17.     
  18.     return    
  19.     
  20. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  21. ;ADVû╜ù▀
  22. #deffunc adv str def,array init,int mb,int fs,int sel
  23.     chk=1
  24.     dat=def
  25.     getstr code,dat,0,',' : code=int(code) : size=strsize
  26.     
  27.     switch code
  28. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  29. ;öwîié╠ô╟é▌ì₧é▌
  30.         case 1
  31.             getstr num,dat,size,','
  32.             file="DPM:data.dpm:back"+num+".jpg"
  33.             gsel 2
  34.             picload file
  35.             chk=0
  36.         swbreak
  37.  
  38. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  39. ;æOîié╠ô╟é▌ì₧é▌
  40.         case 2
  41.             getstr layer,dat,size,',' : layer=10+int(layer) : size=size+strsize
  42.             getstr xp,dat,size,',' : xp=int(xp) : size=size+strsize            
  43.             getstr num,dat,size,','
  44.             
  45.             file="DPM:data.dpm:chr"+num+".bmp"
  46.             buffer 6 : picload file
  47.             gsel layer
  48.             gmode 0
  49.             pos xp,0 : gcopy 6,0,0,int(init.1),int(init.2)
  50.             chk=0
  51.         swbreak
  52.  
  53. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  54. ;âEâGâCâgÅêù¥
  55.         case 90
  56.             getstr num,dat,size,',' : num=int(num)
  57.             await num
  58.             chk=0
  59.             
  60.         swbreak
  61.     
  62. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  63. ;âgâëâôâWâVâçâô
  64.         case 100
  65.             getstr id,dat,size,',' : id=int(id)
  66.  
  67.             ;ìçɼëµæ£ì∞ɼ
  68.             buffer 6,800,600,0
  69.             
  70.             ;öwîi
  71.             gmode 0
  72.             pos 0,0 : gcopy 2,0,0,int(init.1),int(init.2)
  73.                             
  74.             ;æOîi
  75.             gmode 2
  76.             repeat int(init.4)
  77.                 fb=10+cnt
  78.                 pos 0,0 : gcopy fb,0,0,int(init.1),int(init.2)
  79.             loop
  80.             gsel sel
  81.             
  82.             ;idé╔éµéΘÅêù¥é╠ò¬è≥
  83.             switch id
  84. ;--------------------------------------------------------------------------------------------------------------------    
  85. ;âtâFü[âhâCâô
  86.                 case 0
  87.                     repeat 16
  88.                         redraw 0
  89.                             await 10
  90.                             ;âoâbâNâAâbâvëµû╩
  91.                             gmode 0
  92.                             pos 0,0 : gcopy 3,0,0,int(init.1),int(init.2)
  93.  
  94.                             gmode 4,,,16*cnt : color 0,255,0
  95.                             pos 0,0 : gcopy 6,0,0,int(init.1),int(init.2)
  96.  
  97.                             ;âüâbâZü[âWâ{ü[âh
  98.                             if mb=1{
  99.                                 gmode 4,,,180 : color 0,0,1
  100.                                 pos 10,440 : gcopy 4,0,0,780,150
  101.                                 color 255,255,255
  102.                                 box 15,445,785,585
  103.                             }
  104.                         redraw 1
  105.                     loop
  106.                 ;swbreak
  107.             swend
  108. ;--------------------------------------------------------------------------------------------------------------------    
  109. ;âoâbâNâAâbâv
  110.             gsel 3
  111.             gmode 0
  112.             pos 0,0 : gcopy 6,0,0,int(init.1),int(init.2)
  113.             chk=0
  114.             
  115.         swbreak
  116.         
  117. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  118. ;Åêù¥é╠ÆåÆf
  119.         case 999
  120.             stop
  121.             
  122.     swend
  123.     
  124. return chk
  125.  
  126. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\
  127. ;âüâbâZü[âWò\Ī
  128. #deffunc texter int twt,int nn,array name,array nc,int fsize,int skip,str tdat,int log,int count
  129.     if nc.nn=0 : color 0,0,0
  130.     if nc.nn=1 : color 64,64,64
  131.     if nc.nn=2 : color 0,0,255
  132.     if nc.nn=3 : color 255,64,128
  133.     if nc.nn=4 : color 0,154,0
  134.     
  135.     textmode 2
  136.     color 255,255,255
  137.     text 0
  138.     
  139.     if nn=0 & log=0 : typ=460 
  140.     if nn!0 & log=0 : typ=490 : pos 20,460 : emes "üy " + name.nn + " üz"
  141.  
  142.     if log=1 : typ=460-(150*count)
  143.     if nn!0 & log=1 {
  144.         pos 20,typ : emes "üy " + name.nn + " üz" : typ+=30
  145.     }
  146.  
  147.     sdim mdat,10000
  148.     
  149.     mdat=tdat
  150.     mm=strlen(mdat)/2
  151.  
  152.     i=0 : message=0
  153.     repeat mm
  154.         moji=strmid(mdat,message*2,2)        
  155. ;--------------------------------------------------------------------------------------------------------------------
  156. ;ëⁿìsÅêù¥    
  157.         if moji="ü½"{
  158.             i=0 : typ+=30
  159.             message++
  160.             continue
  161.         }
  162.  
  163. ;--------------------------------------------------------------------------------------------------------------------
  164. ;âïârò\Ī    
  165.         if moji="ü¬"{
  166.             message++
  167.             ruby=strmid(mdat,message*2,2) : ruby=int(ruby)
  168.             message++
  169.             ruby_t=strmid(mdat,message*2,ruby*2)
  170.             font "élér âSâVâbâN",9,0 : ryp=typ-11
  171.             if ruby=1 : rxp=30+(i*fsize)+4 
  172.             if ruby=2 : rxp=30+(i*fsize)
  173.             if ruby=3 : rxp=30+(i*fsize)-2
  174.             if ruby=4 : rxp=30+(i*fsize)
  175.             
  176.             pos rxp,ryp : mes ruby_t
  177.             message=message+ruby
  178.             continue
  179.         }
  180.  
  181. ;--------------------------------------------------------------------------------------------------------------------
  182. ;û╝æOÅêù¥
  183.     if moji="üö"{
  184.         message++
  185.         num=int(strmid(mdat,message*2,2))
  186.         message++
  187.         font "élér âSâVâbâN",fsize,1
  188.         pos 40+(i*fsize),typ : emes namae.num
  189.         i=i+(strlen(namae.num)/2) : if i>40 : i=0 : typ+=30
  190.         continue
  191.     }
  192.  
  193.     
  194. ;--------------------------------------------------------------------------------------------------------------------
  195. ;ò╢ÄÜò\Ī
  196.         font "élér âSâVâbâN",fsize,1 
  197.         if skip=0 : text twt : else : text 0
  198.         pos 30+(i*fsize),typ : emes moji
  199.  
  200. ;--------------------------------------------------------------------------------------------------------------------
  201. ;3ô_âèü[â_ü[Åêù¥    
  202.         
  203.         if moji="üc"{
  204.             n_moji=strmid(mdat,message*2+2,2)
  205.             if n_moji!"üv" & skip=0 & log=0 & twt!0 : await 200
  206.         }
  207.         
  208.         i++ : if i>40 : i=0 : typ+=30
  209.         message++
  210.         
  211.     loop    
  212. return
  213.  
  214. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  215. ;æIæ≡ÄêÅêù¥
  216. #deffunc selecter int sesu,str setsu,str set1,str set2,str set3
  217.     await 5
  218.     x=mousex : y=mousey : id=999
  219.     
  220.     redraw 0
  221.         gmode 0
  222.         pos 0,0 : gcopy 3,0,0,800,600
  223.         gmode 4,,,180 : color 0,0,1
  224.         pos 10,440 : gcopy 4,0,0,780,150
  225.         color 255,255,255
  226.         box 15,445,785,585
  227.  
  228.         color 255,154,0
  229.         textmode 2
  230.         color 255,255,255
  231.         text 0
  232.         pos 20,460 : emes setsu
  233.         
  234.         color 0,0,0
  235.         textmode 2
  236.         color 154,154,154
  237.         pos 60,490 : emes set1
  238.         pos 60,520 : emes set2
  239.         pos 60,550 : emes set3
  240.  
  241.         color 255,128,64
  242.         textmode 2
  243.         color 255,255,255
  244.         text 0
  245.  
  246.         if x>10 & x<790 & y>490 & y<580{
  247.             if y>490 & y<520 : id=1 : pos 30,490 : emes "üΓ" : pos 60,490 : emes set1
  248.             if y>520 & y<550 : id=2 : pos 30,520 : emes "üΓ" : pos 60,520 : emes set2
  249.             if sesu=3 : if y>550 & y<580 : id=3 : pos 30,550 : emes "üΓ" : pos 60,550 : emes set3
  250.             
  251.         }
  252.         
  253.     redraw 1    
  254. return id
  255.  
  256. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\    
  257. ;ëµû╩ùhéτé╡
  258.  
  259. #deffunc shake int mb
  260.  
  261.     repeat 16
  262.         redraw 0
  263.             qx=rnd(400)-200
  264.             qy=rnd(300)-150
  265.             gmode 0
  266.             pos qx,qy : gcopy 3,0,0,800,600
  267.             if mb=1{
  268.                 gmode 4,,,180 : color 0,0,1
  269.                 pos 10,440 : gcopy 4,0,0,780,150
  270.                 color 255,255,255
  271.                 box 15,445,785,585
  272.             }
  273.         redraw 1
  274.     loop
  275.     redraw 0
  276.         gmode 0
  277.         pos 0,0 : gcopy 3,0,0,800,600
  278.         if mb=1{
  279.             gmode 4,,,180 : color 0,0,1
  280.             pos 10,440 : gcopy 4,0,0,780,150
  281.             color 255,255,255
  282.             box 15,445,785,585
  283.         }
  284.     redraw 1
  285. return
  286.  
  287. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\
  288. ;âåü[âUü[ÆΦï`â_âCâAâìâOâ{âbâNâX(ò╘éΦÆlé═idÆl)
  289.     #deffunc dialog_box int cd,str d_mes
  290.         mref id,64
  291.     
  292.         await 5
  293.         x=mousex : y=mousey : w=mousew
  294.         
  295.         redraw 0
  296.             ;ÆΦö╘é╠ÅIù╣èmöF
  297.             if cd=0{
  298.                 a=300 : b=260 : c=500 : d=340
  299.                 gmode 0
  300.                 pos a-10,b-10 : gcopy 4,0,0,c-a+20,d-b+20
  301.                 box a,b,c,d
  302.                 
  303.                 pos 310,270 : mes "ÅIù╣é╡é▄é╖é⌐üH"
  304.                 color 154,154,154
  305.                 pos 340,310 : mes "é═ü@éó"
  306.                 pos 420,310 : mes "éóéóéª"
  307.                 color 0,255,0 : id=0
  308.                 if x>340 & x<474 & y>310 & y<330{
  309.                     if x>340 & x<394 : pos 340,310 : mes "é═ü@éó" : id=1
  310.                     if x>420 & x<474 : pos 420,310 : mes "éóéóéª" : id=2    
  311.                 }
  312.             }
  313.  
  314.             ;ö─ùpâ_âCâAâìâO(é═éóü^éóéóéª)
  315.             if cd=1{
  316.                 a=300 : b=260 : c=500 : d=340
  317.                 gmode 0
  318.                 pos a-10,b-10 : gcopy 4,0,0,c-a+20,d-b+20
  319.                 box a,b,c,d
  320.                 
  321.                 pos 310,270 : mes d_mes
  322.                 color 154,154,154
  323.                 pos 340,310 : mes "é═ü@éó"
  324.                 pos 420,310 : mes "éóéóéª"
  325.                 color 0,255,0 : id=0
  326.                 if x>340 & x<474 & y>310 & y<330{
  327.                     if x>340 & x<394 : pos 340,310 : mes "é═ü@éó" : id=1
  328.                     if x>420 & x<474 : pos 420,310 : mes "éóéóéª" : id=2    
  329.                 }
  330.                 
  331.             }
  332.         redraw 1
  333.         
  334.     return id
  335.  
  336. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\
  337. ;âXâ^âbâtâìü[âï
  338. #deffunc ending int sel
  339.  
  340. gsel sel
  341.  
  342. color 0,0,0
  343. textmode 2
  344. color 255,255,255
  345. text 0
  346.  
  347. pos 0,0 : gcopy 4,0,0,800,600
  348. st=" - COLORS Staff - " : len=strlen(st)/2
  349. pos 400-(len*9),282 : emes st
  350.  
  351. await 5000
  352.  
  353. repeat 32
  354.     gmode 4,,,8*cnt
  355.     pos 0,0 : gcopy 4,0,0,800,600
  356. loop
  357.  
  358. pos 100,120 : emes "âVâiâèâI"
  359. pos 100,160 : emes "âLâââëâNâ^ü[âfâUâCâôüECG"
  360. pos 100,200 : emes "âvâìâOâëâÇ"
  361. pos 100,240 : emes "ë╣ü@èy"
  362. pos 600,282 : emes "ìΓü@û{"
  363.  
  364. await 5000
  365.  
  366. repeat 32
  367.     gmode 4,,,8*cnt
  368.     pos 0,0 : gcopy 4,0,0,800,600
  369. loop
  370.  
  371. pos 100,120 : emes "æfì▐Ʊïƒ"
  372. pos 300,160 : emes "öwü@îi : É¼ÉúÆ╝îΦùl"
  373. pos 300,200 : emes "http://may.force.mepage.jp/"
  374. pos 300,280 : emes "î°ë╩ë╣ : âUüEâ}âbâ`âüâCâJâ@âYùl"
  375. pos 300,320 : emes "http://osabisi.sakura.ne.jp/m2/"
  376.  
  377. await 5000
  378.  
  379. repeat 32
  380.     gmode 4,,,8*cnt
  381.     pos 0,0 : gcopy 4,0,0,800,600
  382. loop
  383.  
  384. redraw 0
  385.     st="ɺì∞üEÆÿì∞" : len=strlen(st)/2
  386.     pos 400-(len*9),200 : emes st
  387.  
  388.     font "élér û╛Æ⌐",32,1
  389.     st="Dim Vais" : len=strlen(st)/2
  390.     pos 400-(len*16),300 : emes st
  391. redraw 1
  392.  
  393. await 5000
  394.  
  395. repeat 32
  396.     gmode 4,,,8*cnt
  397.     pos 0,0 : gcopy 4,0,0,800,600
  398. loop
  399. font "élér âSâVâbâN",18,1
  400.  
  401. return
  402.  
  403. ;ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\ü\
  404. ;âXâNâèü[âôâLâââvâ`ââ
  405.     #deffunc snap
  406.     
  407.         ;Cê╚èOé═û▀éΘ
  408.         if wparam!67 : return
  409.         
  410.         ;ò█æ╢ùpâ_âCâAâìâOé╠ò\Ī
  411.         dialog "bmp",17,"ârâbâgâ}âbâv"
  412.         
  413.         ;É│ÅφÅIù╣é╠ÅΩìç
  414.         if stat=1{
  415.             ;BMPî`Ä«é╠ëµæ£é≡ò█æ╢
  416.             bmpsave refstr
  417.         }
  418.         
  419.     return
  420.  
  421.  
  422. #global
  423.