£Ã£è£á£ð£ô£å£ò.£µ£¶ [ ¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à£±£¶¡§¥¹¥³¥¢¤Îɽ¼¨ ]
¢£¤¤¤Þ¤µ¤é´ðËÜŪ¤ÊÉôʬ
¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Î¹ÖºÂ¤â¡¢¤½¤í¤½¤í½ª¤ï¤ê¤¬¸«¤¨¤Æ¤¤Þ¤·¤¿¡£
´ðËÜŪ¤ÊÉôʬ¤¬¤À¤¤¤Ö´°À®¤·¤Æ¡¢¤¢¤È¤Ï¥¹¥³¥¢¤È¥¿¥¤¥È¥ë¤Î¼ÂÁõ¡¢¤½¤·¤Æ¡¢¥Ü¥¹¤ÎÅоì¤Ë¤Æ¥Õ¥£¥Ë¥Ã¥·¥å¤Ç¤¹¡£¤¢¤È¾¯¤·¡¢º¬µ¤¤ò½Ð¤·¤Æ¤¬¤ó¤Ð¤Ã¤Æ¤Û¤·¤¤¤È»×¤¤¤Þ¤¹¡£
¤µ¤Æ¡¢º£²ó¤Î¥Æ¡¼¥Þ¤Ï¡Ø¥¹¥³¥¢¡Ù¤Ç¤¹¡£
¡Ø¥¹¥³¥¢¡Ù¤Î¼ÂÁõ¤ÏÈó¾ï¤Ë´Êñ¤Ç¤¹¡£¤µ¤Ã¤¯¤ê¼ÂÁõ¤µ¤»¤Æ¤·¤Þ¤¤¤Þ¤·¤ç¤¦¡£
¥¹¥³¥¢¤Îɽ¼¨¤Ë¤Ï¡¢ÊÑ¿ô¤ò¤Ò¤È¤Ä²Ã¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤Ë¥¹¥³¥¢¤Î¾õÂÖ¤òÊÝ»ý¤·¤Æ¤ª¤¡¢¥ë¡¼¥×¤¹¤ë¤´¤È¤Ë²èÌ̤ò¹¹¿·¤¹¤ì¤Ð¤¤¤¤¤Î¤Ç¤¹¡£
¤³¤ÎÊÑ¿ô
Ũ¥¥ã¥é¥¯¥¿¡¼¤¬Ç˲õ¤µ¤ì¤ë¤«¤É¤¦¤«¡¢¤½¤ì¤òȽÄꤷ¤Æ¤¤¤ë¤Î¤Ï¡Ø¥×¥ì¥¤¥ä¡¼¤Î¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã¡Ù¤Ç¤¹¡£¥×¥ì¥¤¥ä¡¼¥¥ã¥é¥¯¥¿¡¼¤¬Êü¤Ã¤¿¥·¥ç¥Ã¥È¤¬¡¢Å¨¥¥ã¥é¥¯¥¿¡¼¤Ë¥Ò¥Ã¥È¤·¤Æ¤¤¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤Î»þÅÀ¤ÇŨ¥¥ã¥é¥¯¥¿¡¼¤¬Ç˲õ¤µ¤ì¤Þ¤¹¡£¤³¤Î¤È¤¡¢Æ±»þ¤Ë¥¹¥³¥¢¤ò¥×¥é¥¹¤¹¤ì¤Ð¡¢¤½¤ì¤À¤±¤Ç¥¹¥³¥¢¤Î¼ÂÁõ¤Ï¤Û¤È¤ó¤É´°À®¤·¤¿¤È¤¤¤Ã¤Æ¤â¤¤¤¤¤Ç¤·¤ç¤¦¡£
Sub P_Shot_Action()
Dim L As Long
Dim LL As Long
For L = 0 To 4
With P_Shot_Data(L)
If .Vis Then
.Y = .Y - 6
If .Y < -5 Then .Vis = False
For LL = 0 To 9
If Enemy_Data(LL).Lif > 0 Then
If .X - 2 < Enemy_Data(LL).X + Enemy_Data(LL).W Then
If .X + 2 > Enemy_Data(LL).X - Enemy_Data(LL).W Then
If .Y - 2 < Enemy_Data(LL).Y + Enemy_Data(LL).H Then
If .Y + 2 > Enemy_Data(LL).Y - Enemy_Data(LL).H Then
.Vis = False
With Enemy_Data(LL)
Call Burst_Begin(.X, .Y)
.Lif = 0
End With
Score = Score + 100
Exit For
End If
End If
End If
End If
End If
Next
With UserForm1.Controls("P_Shot" & L + 1)
If P_Shot_Data(L).Vis Then
.Left = P_Shot_Data(L).X - Shot_Size
.Top = P_Shot_Data(L).Y - Shot_Size
Else
.Visible = False
End If
End With
End If
End With
Next
End Sub
¤Ï¤¤¡¢¤³¤ó¤À¤±¡£´Êñ¤Ç¤¹¤Í¡£
º£²ó¤ÏŨ¥¥ã¥é¥¯¥¿¡¼¤ò£±ÂÎÇ˲õ¤¹¤ë¤´¤È¤Ë¡¢£±£°£°ÅÀÆþ¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£¤³¤ì¤Ï¼«Í³¤ËÊѹ¹¤¹¤ì¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¡£
¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã¤Ë´Ø¤·¤Æ¤Ï¡¢ËÜÅö¤Ë¤³¤ì¤À¤±¤Ç¤¹¡£Å¨¥¥ã¥é¥¯¥¿¡¼¤È¤Î¾×ÆÍȽÄê¤ò¹Ô¤¤¡¢¾×ÆÍ¤·¤Æ¤¤¤¿¾ì¹ç¤Ë¤ÏŨ¥¥ã¥é¥¯¥¿¡¼¤òÇ˲õ¤·¤Þ¤¹¤¬¡¢¤½¤ì¤ÈƱ»þ¤ËÊÑ¿ô
¤µ¤Æ¡¢¤Þ¤µ¤«¤³¤ì¤Ç´°Î»¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
ÌýÃǤ»¤º¤Ë¼¡¤Ë¹Ô¤¤Þ¤·¤ç¤¦¡£
¢£½é´ü²½½èÍý¤ò½¤Àµ
¥¹¥³¥¢¤Ï¡¢¥²¡¼¥à¤¬³«»Ï¤µ¤ì¤ë¤È¤¤Ë¤Ï¥ê¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¤È¤ª¤«¤·¤¤¤Ç¤¹¤Í¡£Á°²ó¤Î¥×¥ì¥¤»þ¤Ë²Ô¤¤¤À¥¹¥³¥¢¤¬¡¢¤½¤Î¤Þ¤Þ¼¡¤Ë»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Æ¤ÏÊѤǤ¹¡£
¤½¤³¤Ç¡¢½é´ü²½½èÍý¤Ï¤·¤Ã¤«¤ê¤ä¤Ã¤Æ¤ª¤¤Þ¤·¤ç¤¦¡£
½é´ü²½½èÍý¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã¡¢¡Ø
Sub Init()
With Player_Data
.X = 100
.Y = 210
.W = 3
.H = 3
.Lif = 1
.Typ = 0
.Par = 1
End With
Erase P_Shot_Data
Erase E_Shot_Data
Erase Enemy_Data
Erase Burst_Data
Shot_Interval = 0
Total_Count = 0
Player_Stock = 2
Score = 0
With UserForm1.Player
.Visible = True
.Top = 200
End With
UserForm1.Lab_Score.Caption = "00000000"
End Sub
ÊÑ¿ô
¤½¤·¤Æ¡¢ÃíÌܤ¹¤Ù¤¤Ï¤½¤Î²¼¤Ç¤¹¡£
¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à¤Î¾åÃʤËÇÛÃÖ¤·¤Æ¤¤¤ë¡¢¥¹¥³¥¢É½¼¨¤Î¤¿¤á¤Î¥é¥Ù¥ë¤¬¡Ø
¤³¤Î¥é¥Ù¥ë¤Ï¡¢¥²¡¼¥àÃæ¤Ë¥¹¥³¥¢¤òɽ¼¨¤¹¤ë¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£¤½¤·¤Æ¡¢¥é¥Ù¥ë¤Ëɽ¼¨¤µ¤ì¤ëʸ»úÎó¤ò´ÉÍý¤¹¤ë¥×¥í¥Ñ¥Æ¥£¤¬¡Ø
¥Ý¥¤¥ó¥È¤Ï¡¢
¾å¤Î¥³¡¼¥É¤ò¸«¤Æ¤â¤é¤¨¤ì¤Ð¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢¥À¥Ö¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó( ¥³¥ì ¢Í
¢£¥²¡¼¥àÃæ¤Î¹¹¿·½èÍý
¥²¡¼¥à¤¬¼ÂºÝ¤Ë»Ï¤Þ¤Ã¤¿¤é¡¢¥¹¥³¥¢¤Ï¥ê¥¢¥ë¥¿¥¤¥à¤Ë¹¹¿·¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤³¤Ç¡¢¤³¤³¤Ç¤Ï¥á¥¤¥ó¥×¥í¥»¥¹¤ò´ÉÍý¤·¤Æ¤¤¤ë¥×¥í¥·¡¼¥¸¥ã¤ò½¤Àµ¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤³¤â¡¢¼ÂºÝ¤Î¥³¡¼¥É¤òºÜ¤»¤Þ¤¹¤Î¤Ç¤Þ¤º¤Ï¸«¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
Sub Main()
Dim Flg As Boolean
Dim Stm As Long
Call Init
Flg = False
Do Until Flg
Stm = GetTickCount
Total_Count = Total_Count + 1
Call Stage_Count
Call Player_Action
Call P_Shot_Action
Call Enemy_Action
Call E_Shot_Action
Call Burst_Action
UserForm1.Lab_Score.Caption = Format(Score, "00000000")
DoEvents
Do
Call Sleep(1)
Loop Until GetTickCount - Stm > 30
If GetAsyncKeyState(Esc_Key) < 0 Then Flg = True
Loop
End Sub
¤µ¤Æ¡¢¤³¤³¤Ç¥Ý¥¤¥ó¥È¤È¤Ê¤ë¤Î¤¬
¤³¤Î´Ø¿ô¤Ï¡¢Ê¸»úÎó¤òÀ°·Á¤·¤Æ¤¯¤ì¤ë´Ø¿ô¤Ç¡¢¼ç¤ËÆüÉÕ¤ä»þ¹ï¤Îɽ¼¨¤Ë´Ø¤¹¤ëµ¡Ç½¤¬½¼¼Â¤·¤Æ¤¤¤Þ¤¹¡£Æ±¤¸ÆüÉÕ¤Ç¤â¡Ø
¤µ¤é¤Ë¡¢¤³¤Î´Ø¿ô¤Ç¤ÏÆüÉÕ¤ä»þ¹ï°Ê³°¤Ë¤â¡¢Ê¸»úÎó¤òÍÍ¡¹¤Ê·Á¼°¤ËÀ°·Á¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
ºÙ¤«¤¤»È¤¤Êý¤òÁ´ÉôÀâÌÀ¤·¤Æ¤·¤Þ¤¦¤È¡¢¤½¤ì¤À¤±¤Ç¤Ò¤È¤Ä¤Î¹ÖºÂ¤¬¤Ç¤¤Æ¤·¤Þ¤¦¤°¤é¤¤¤Î¥Ü¥ê¥å¡¼¥à¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¶½Ì£¤Î¤¢¤ëÊý¤Ï¼«ÎϤǥإë¥×¤ò¸«¤Æ¤ß¤ë¤Ê¤ê¡¢¥Í¥Ã¥È¤Ç¸¡º÷¤¹¤ë¤Ê¤ê¤·¤ÆÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£
º£²ó¤Ï¡¢¥¹¥³¥¢¤Î¿ôÃͤòÀ°·Á¤¹¤ë¤¿¤á¤Ë
¤Þ¤º¡¢Àè¤Û¤É¤Î¥³¡¼¥É¤«¤é¡¢
¥¹¥³¥¢É½¼¨ÍѤΥé¥Ù¥ë¤Ë¡¢À°·Á¤·¤¿Ê¸»úÎó¤òÀßÄꤷ¤Æ¤¤¤ëÉôʬ¤Ç¤¹¤Í¡£
º£²ó¤Ï¡¢Âè°ì°ú¿ô¤Ë¡¢¥¹¥³¥¢¤ÎÃͤòÊÝ»ý¤·¤Æ¤¤¤ëÊÑ¿ô
²¾¤Ë¡¢ÊÑ¿ô
¤â¤¦¤ª¤ï¤«¤ê¤Ç¤¹¤Í¡©
¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Ê¤É¤Î¥¹¥³¥¢É½¼¨¤Ç¤Ï¡¢¤É¤ó¤Ê¤Ë¥¹¥³¥¢¤¬¾¯¤Ê¤¤¤È¤¤Ç¤â¡¢Â¤ê¤Ê¤¤·å¿ô¤ÎÉôʬ¤Ï£°¤ÇËä¤Þ¤Ã¤Æ¤¤¤ë¤³¤È¤¬Â¿¤¤¤Ç¤¹¤è¤Í¡£
Àè¤Û¤É¤â½ñ¤¤Þ¤·¤¿¤¬¡¢
¤³¤Î¹ÖºÂ¤Ç¤Ï²òÀ⤷¤Þ¤»¤ó¤¬¡¢Ä´¤Ù¤ë¤È¤¤¤í¤ó¤Ê¤³¤È¤¬¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¤Î¤Ç¡¢¶½Ì£¤Î¤¢¤ë¤«¤¿¤Ï¤¬¤ó¤Ð¤Ã¤ÆÄ´¤Ù¤Æ¤ß¤Þ¤·¤ç¤¦¤Í¡£
¥¹¥³¥¢¤Ë¤Ä¤¤¤Æ¤Ï´Êñ¤Ç¤¹¤¬¤³¤ì¤Ç´°Î»¤Ç¤¹¡£Á´ÂΤΥ³¡¼¥É¤ÏºÜ¤»¤Þ¤»¤ó¤¬¡¢¿§¤Ä¤¤ÎÉôʬ¤òÄɲ䷤Ƥä¤ì¤Ð¡¢¤½¤ì¤À¤±¤Ç¤¦¤Þ¤¯¤¤¤¯¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Ï¤º¤Ç¤¹¡£
¼¡²ó¤Ï¥¿¥¤¥È¥ë²èÌ̤òºî¤ê¤Þ¤¹¡£¤ª³Ú¤·¤ß¤Ë¡£
¢£³Ê¸À
¥¹¥³¥¢¤À¤±¤Ç¤Ê¤¯¡¢¥¿¥¤¥à¤òɽ¼¨¤·¤¿¤¤¾ì¹ç¤Ê¤É¤Ë¤â±þÍѤǤ¤Þ¤¹¡£
¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Î¹ÖºÂ¤â¡¢¤½¤í¤½¤í½ª¤ï¤ê¤¬¸«¤¨¤Æ¤¤Þ¤·¤¿¡£
´ðËÜŪ¤ÊÉôʬ¤¬¤À¤¤¤Ö´°À®¤·¤Æ¡¢¤¢¤È¤Ï¥¹¥³¥¢¤È¥¿¥¤¥È¥ë¤Î¼ÂÁõ¡¢¤½¤·¤Æ¡¢¥Ü¥¹¤ÎÅоì¤Ë¤Æ¥Õ¥£¥Ë¥Ã¥·¥å¤Ç¤¹¡£¤¢¤È¾¯¤·¡¢º¬µ¤¤ò½Ð¤·¤Æ¤¬¤ó¤Ð¤Ã¤Æ¤Û¤·¤¤¤È»×¤¤¤Þ¤¹¡£
¤µ¤Æ¡¢º£²ó¤Î¥Æ¡¼¥Þ¤Ï¡Ø¥¹¥³¥¢¡Ù¤Ç¤¹¡£
¡Ø¥¹¥³¥¢¡Ù¤Î¼ÂÁõ¤ÏÈó¾ï¤Ë´Êñ¤Ç¤¹¡£¤µ¤Ã¤¯¤ê¼ÂÁõ¤µ¤»¤Æ¤·¤Þ¤¤¤Þ¤·¤ç¤¦¡£
¥¹¥³¥¢¤Îɽ¼¨¤Ë¤Ï¡¢ÊÑ¿ô¤ò¤Ò¤È¤Ä²Ã¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤³¤ÎÊÑ¿ô¤Ë¥¹¥³¥¢¤Î¾õÂÖ¤òÊÝ»ý¤·¤Æ¤ª¤¡¢¥ë¡¼¥×¤¹¤ë¤´¤È¤Ë²èÌ̤ò¹¹¿·¤¹¤ì¤Ð¤¤¤¤¤Î¤Ç¤¹¡£
Public Score As Long
'¥²¡¼¥à¤Î¥¹¥³¥¢¤³¤ÎÊÑ¿ô
Score¤Ë¡¢¸½ºß¤Î¥¹¥³¥¢¤Î¾õÂÖ¤òÊÝ»ý¤·¤Þ¤¹¡£¤½¤·¤Æ¡¢ÅöÁ³¤Î¤³¤È¤Ê¤¬¤éŨ¥¥ã¥é¥¯¥¿¡¼¤òÇ˲õ¤·¤¿¤È¤¤Ë¡¢¤³¤ÎÊÑ¿ô¤ËÆÀÅÀ¤ò¥×¥é¥¹¤·¤Æ¤¤¤¤Þ¤¹¡£¤È¤¤¤¦¤³¤È¤Ï¡¢¤É¤Î¥×¥í¥·¡¼¥¸¥ã¤ò½¤Àµ¤¹¤ì¤Ð¤¤¤¤¤Î¤«¤ï¤«¤ê¤Þ¤¹¤Í¡©Å¨¥¥ã¥é¥¯¥¿¡¼¤¬Ç˲õ¤µ¤ì¤ë¤«¤É¤¦¤«¡¢¤½¤ì¤òȽÄꤷ¤Æ¤¤¤ë¤Î¤Ï¡Ø¥×¥ì¥¤¥ä¡¼¤Î¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã¡Ù¤Ç¤¹¡£¥×¥ì¥¤¥ä¡¼¥¥ã¥é¥¯¥¿¡¼¤¬Êü¤Ã¤¿¥·¥ç¥Ã¥È¤¬¡¢Å¨¥¥ã¥é¥¯¥¿¡¼¤Ë¥Ò¥Ã¥È¤·¤Æ¤¤¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤Î»þÅÀ¤ÇŨ¥¥ã¥é¥¯¥¿¡¼¤¬Ç˲õ¤µ¤ì¤Þ¤¹¡£¤³¤Î¤È¤¡¢Æ±»þ¤Ë¥¹¥³¥¢¤ò¥×¥é¥¹¤¹¤ì¤Ð¡¢¤½¤ì¤À¤±¤Ç¥¹¥³¥¢¤Î¼ÂÁõ¤Ï¤Û¤È¤ó¤É´°À®¤·¤¿¤È¤¤¤Ã¤Æ¤â¤¤¤¤¤Ç¤·¤ç¤¦¡£
'¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ãSub P_Shot_Action()
Dim L As Long
Dim LL As Long
For L = 0 To 4
With P_Shot_Data(L)
If .Vis Then
.Y = .Y - 6
If .Y < -5 Then .Vis = False
For LL = 0 To 9
If Enemy_Data(LL).Lif > 0 Then
If .X - 2 < Enemy_Data(LL).X + Enemy_Data(LL).W Then
If .X + 2 > Enemy_Data(LL).X - Enemy_Data(LL).W Then
If .Y - 2 < Enemy_Data(LL).Y + Enemy_Data(LL).H Then
If .Y + 2 > Enemy_Data(LL).Y - Enemy_Data(LL).H Then
.Vis = False
With Enemy_Data(LL)
Call Burst_Begin(.X, .Y)
.Lif = 0
End With
Score = Score + 100
Exit For
End If
End If
End If
End If
End If
Next
With UserForm1.Controls("P_Shot" & L + 1)
If P_Shot_Data(L).Vis Then
.Left = P_Shot_Data(L).X - Shot_Size
.Top = P_Shot_Data(L).Y - Shot_Size
Else
.Visible = False
End If
End With
End If
End With
Next
End Sub
¤Ï¤¤¡¢¤³¤ó¤À¤±¡£´Êñ¤Ç¤¹¤Í¡£
º£²ó¤ÏŨ¥¥ã¥é¥¯¥¿¡¼¤ò£±ÂÎÇ˲õ¤¹¤ë¤´¤È¤Ë¡¢£±£°£°ÅÀÆþ¤ë¤è¤¦¤Ë¤·¤Þ¤·¤¿¡£¤³¤ì¤Ï¼«Í³¤ËÊѹ¹¤¹¤ì¤Ð¤¤¤¤¤Ç¤·¤ç¤¦¡£
¥·¥ç¥Ã¥È°Üư´ÉÍý¥×¥í¥·¡¼¥¸¥ã¤Ë´Ø¤·¤Æ¤Ï¡¢ËÜÅö¤Ë¤³¤ì¤À¤±¤Ç¤¹¡£Å¨¥¥ã¥é¥¯¥¿¡¼¤È¤Î¾×ÆÍȽÄê¤ò¹Ô¤¤¡¢¾×ÆÍ¤·¤Æ¤¤¤¿¾ì¹ç¤Ë¤ÏŨ¥¥ã¥é¥¯¥¿¡¼¤òÇ˲õ¤·¤Þ¤¹¤¬¡¢¤½¤ì¤ÈƱ»þ¤ËÊÑ¿ô
Score¤ò²Ã»»¤·¤Æ¤¤¤ë¤À¤±¤Ç¤¹¡£¤µ¤Æ¡¢¤Þ¤µ¤«¤³¤ì¤Ç´°Î»¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
ÌýÃǤ»¤º¤Ë¼¡¤Ë¹Ô¤¤Þ¤·¤ç¤¦¡£
¢£½é´ü²½½èÍý¤ò½¤Àµ
¥¹¥³¥¢¤Ï¡¢¥²¡¼¥à¤¬³«»Ï¤µ¤ì¤ë¤È¤¤Ë¤Ï¥ê¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Ê¤¤¤È¤ª¤«¤·¤¤¤Ç¤¹¤Í¡£Á°²ó¤Î¥×¥ì¥¤»þ¤Ë²Ô¤¤¤À¥¹¥³¥¢¤¬¡¢¤½¤Î¤Þ¤Þ¼¡¤Ë»Ä¤Ã¤Æ¤·¤Þ¤Ã¤Æ¤¤¤Æ¤ÏÊѤǤ¹¡£
¤½¤³¤Ç¡¢½é´ü²½½èÍý¤Ï¤·¤Ã¤«¤ê¤ä¤Ã¤Æ¤ª¤¤Þ¤·¤ç¤¦¡£
½é´ü²½½èÍý¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ã¡¢¡Ø
Init¡Ù¤òÊѹ¹¤·¤Þ¤¹¡£'½é´ü²½¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ãSub Init()
With Player_Data
.X = 100
.Y = 210
.W = 3
.H = 3
.Lif = 1
.Typ = 0
.Par = 1
End With
Erase P_Shot_Data
Erase E_Shot_Data
Erase Enemy_Data
Erase Burst_Data
Shot_Interval = 0
Total_Count = 0
Player_Stock = 2
Score = 0
With UserForm1.Player
.Visible = True
.Top = 200
End With
UserForm1.Lab_Score.Caption = "00000000"
End Sub
ÊÑ¿ô
Score¤Ë¤Ï£°¤òÀßÄꤷ¤Æ¤ª¤¤Þ¤¹¡£¤³¤ì¤ÏÀâÌÀÉÔÍפǤ¹¤Í¡£¤½¤·¤Æ¡¢ÃíÌܤ¹¤Ù¤¤Ï¤½¤Î²¼¤Ç¤¹¡£
¥æ¡¼¥¶¡¼¥Õ¥©¡¼¥à¤Î¾åÃʤËÇÛÃÖ¤·¤Æ¤¤¤ë¡¢¥¹¥³¥¢É½¼¨¤Î¤¿¤á¤Î¥é¥Ù¥ë¤¬¡Ø
Lab_Score¡Ù¤Ç¤¹¡£°ìÈֺǽé¤Îº¢¤ËÇÛÃÖ¤·¤¿¤â¤Î¤Ê¤Î¤Ç¡¢Ëº¤ì¤Æ¤·¤Þ¤Ã¤¿Êý¤â¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤Í¡£¤³¤Î¥é¥Ù¥ë¤Ï¡¢¥²¡¼¥àÃæ¤Ë¥¹¥³¥¢¤òɽ¼¨¤¹¤ë¤¿¤á¤Ë»È¤¤¤Þ¤¹¡£¤½¤·¤Æ¡¢¥é¥Ù¥ë¤Ëɽ¼¨¤µ¤ì¤ëʸ»úÎó¤ò´ÉÍý¤¹¤ë¥×¥í¥Ñ¥Æ¥£¤¬¡Ø
Caption¥×¥í¥Ñ¥Æ¥£¡Ù¤Ç¤¹¡£¤³¤Î¥×¥í¥Ñ¥Æ¥£¤Ï´û¤Ë²¿ÅÙ¤«½Ð¤Æ¤¤Æ¤¤¤Þ¤¹¤Í¡£¤³¤³¤Ë¤â½é´üÃͤȤʤëÃͤòÀßÄꤷ¤Æ¤ª¤¤Þ¤¹¡£¥Ý¥¤¥ó¥È¤Ï¡¢
Caption¥×¥í¥Ñ¥Æ¥£¤Ë¤Ïʸ»úÎó¤òÀßÄꤹ¤ë¡¢¤È¤¤¤¦¤³¤È¤Ç¤¹¡£¾å¤Î¥³¡¼¥É¤ò¸«¤Æ¤â¤é¤¨¤ì¤Ð¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¤¬¡¢¥À¥Ö¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó( ¥³¥ì ¢Í
" )¤Ç°Ï¤ó¤Ç¤¤¤Þ¤¹¤è¤Í¡£¤Ä¤Þ¤ê¡¢¿ôÃͤΥǡ¼¥¿¤È¤·¤Æ¤Î£°¤Ç¤Ï¤Ê¤¯¡¢Ê¸»úÎó¤Î¡Ø 00000000 ¡Ù¤òÀßÄꤷ¤Æ¤¤¤ë¤ï¤±¤Ç¤¹¤Í¡£ÊäÂ¥³¥é¥à¡§Caption¥×¥í¥Ñ¥Æ¥£
Caption¥×¥í¥Ñ¥Æ¥£¤Ï¡¢¥é¥Ù¥ë¤Ê¤É¤Î¥³¥ó¥È¥í¡¼¥ë¤Ëʸ»úÎó¤òɽ¼¨¤¹¤ë¥×¥í¥Ñ¥Æ¥£¤Ç¤¹¡£¤³¤Î¥×¥í¥Ñ¥Æ¥£¤Ë²¿¤«¤·¤é¤Îʸ»úÎó¤òÀßÄꤷ¤Æ¤¤¤ë¤È¡¢¤½¤ÎÆâÍÆ¤¬¥³¥ó¥È¥í¡¼¥ë¾å¤Ëʸ»ú¤È¤·¤ÆÉ½¼¨¤µ¤ì¤Þ¤¹¡£
¤Á¤Ê¤ß¤Ë¡¢¥é¥Ù¥ë¡¢µÚ¤Ó¥³¥Þ¥ó¥É¥Ü¥¿¥ó¤Ê¤É¤Ç¤Ï¡¢Caption¥×¥í¥Ñ¥Æ¥£¤ËÀßÄꤵ¤ì¤¿Ê¸»úÎ󤬥³¥ó¥È¥í¡¼¥ë¾å¤Ë¤½¤Î¤Þ¤Þɽ¼¨¤µ¤ì¤Þ¤¹¤¬¡¢¥³¥ó¥È¥í¡¼¥ë¤Î¼ïÎà¤Ë¤è¤Ã¤Æ¤Ï¡¢Ê¸»úÎó¤¬É½¼¨¤µ¤ì¤ë°ÌÃÖ¤¬¤½¤ì¤¾¤ì¤Ë°Û¤Ê¤ê¤Þ¤¹¡£
¥é¥Ù¥ë¤Ê¤É¥Õ¥ì¡¼¥à¥Þ¥ë¥Á¥Ú¡¼¥¸¤Ê¤É


¤³¤ì¤é¤Î°ã¤¤¤ò¤è¤¯Íý²ò¤·¤Æ¤ª¤¤Þ¤·¤ç¤¦¡£¢£¥²¡¼¥àÃæ¤Î¹¹¿·½èÍý
¥²¡¼¥à¤¬¼ÂºÝ¤Ë»Ï¤Þ¤Ã¤¿¤é¡¢¥¹¥³¥¢¤Ï¥ê¥¢¥ë¥¿¥¤¥à¤Ë¹¹¿·¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¤½¤³¤Ç¡¢¤³¤³¤Ç¤Ï¥á¥¤¥ó¥×¥í¥»¥¹¤ò´ÉÍý¤·¤Æ¤¤¤ë¥×¥í¥·¡¼¥¸¥ã¤ò½¤Àµ¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
¤³¤³¤â¡¢¼ÂºÝ¤Î¥³¡¼¥É¤òºÜ¤»¤Þ¤¹¤Î¤Ç¤Þ¤º¤Ï¸«¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡£
'¥á¥¤¥ó¥×¥í¥»¥¹¤òôÅö¤¹¤ë¥×¥í¥·¡¼¥¸¥ãSub Main()
Dim Flg As Boolean
Dim Stm As Long
Call Init
Flg = False
Do Until Flg
Stm = GetTickCount
Total_Count = Total_Count + 1
Call Stage_Count
Call Player_Action
Call P_Shot_Action
Call Enemy_Action
Call E_Shot_Action
Call Burst_Action
UserForm1.Lab_Score.Caption = Format(Score, "00000000")
DoEvents
Do
Call Sleep(1)
Loop Until GetTickCount - Stm > 30
If GetAsyncKeyState(Esc_Key) < 0 Then Flg = True
Loop
End Sub
¤µ¤Æ¡¢¤³¤³¤Ç¥Ý¥¤¥ó¥È¤È¤Ê¤ë¤Î¤¬
Format´Ø¿ô¤Ç¤¹¡£¤³¤Î´Ø¿ô¤Ï¡¢Ê¸»úÎó¤òÀ°·Á¤·¤Æ¤¯¤ì¤ë´Ø¿ô¤Ç¡¢¼ç¤ËÆüÉÕ¤ä»þ¹ï¤Îɽ¼¨¤Ë´Ø¤¹¤ëµ¡Ç½¤¬½¼¼Â¤·¤Æ¤¤¤Þ¤¹¡£Æ±¤¸ÆüÉÕ¤Ç¤â¡Ø
2008/03/16¡Ù¤Èɽµ¤·¤¿¤¤¾ì¹ç¤È¡ØMar 16 2008¡Ù¤Èɽµ¤·¤¿¤¤¾ì¹ç¤Ê¤É¤¬¤¢¤ë¤È»×¤¤¤Þ¤¹¡£¤³¤Î¤è¤¦¤Êɽ¼¨·Á¼°¤Î°ã¤¤¤Ê¤É¤ò¼«Í³¤ËÀ°·Á¤¹¤ë¤³¤È¤¬¤Ç¤¤ë¤ï¤±¤Ç¤¹¡£¤µ¤é¤Ë¡¢¤³¤Î´Ø¿ô¤Ç¤ÏÆüÉÕ¤ä»þ¹ï°Ê³°¤Ë¤â¡¢Ê¸»úÎó¤òÍÍ¡¹¤Ê·Á¼°¤ËÀ°·Á¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
ºÙ¤«¤¤»È¤¤Êý¤òÁ´ÉôÀâÌÀ¤·¤Æ¤·¤Þ¤¦¤È¡¢¤½¤ì¤À¤±¤Ç¤Ò¤È¤Ä¤Î¹ÖºÂ¤¬¤Ç¤¤Æ¤·¤Þ¤¦¤°¤é¤¤¤Î¥Ü¥ê¥å¡¼¥à¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦¤Î¤Ç¡¢¶½Ì£¤Î¤¢¤ëÊý¤Ï¼«ÎϤǥإë¥×¤ò¸«¤Æ¤ß¤ë¤Ê¤ê¡¢¥Í¥Ã¥È¤Ç¸¡º÷¤¹¤ë¤Ê¤ê¤·¤ÆÄ´¤Ù¤Æ¤¯¤À¤µ¤¤¡£
º£²ó¤Ï¡¢¥¹¥³¥¢¤Î¿ôÃͤòÀ°·Á¤¹¤ë¤¿¤á¤Ë
Format´Ø¿ô¤òÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£¤³¤³¤ò¾¯¤·¾Ü¤·¤¯²òÀ⤷¤Þ¤·¤ç¤¦¡£¤Þ¤º¡¢Àè¤Û¤É¤Î¥³¡¼¥É¤«¤é¡¢
Format´Ø¿ô¤ò»È¤Ã¤Æ¤¤¤ëÉôʬ¤òÈ´¤½Ð¤·¤Æ¤â¤¦°ìÅÙ¸«¤Æ¤ß¤Þ¤·¤ç¤¦¡£UserForm1.Lab_Score.Caption = Format(Score, "00000000")
¥¹¥³¥¢É½¼¨ÍѤΥé¥Ù¥ë¤Ë¡¢À°·Á¤·¤¿Ê¸»úÎó¤òÀßÄꤷ¤Æ¤¤¤ëÉôʬ¤Ç¤¹¤Í¡£
Format´Ø¿ô¤Ï¡¢Âè°ì°ú¿ô¤È¤·¤ÆÍ¿¤¨¤é¤ì¤¿¥Ç¡¼¥¿¤ò¡¢ÂèÆó°ú¿ô¤Î½ñ¼°¤ÇÀ°·Á¤·¤Æ¡¢·ë²Ì¤òÊÖ¤·¤Æ¤¯¤ì¤Þ¤¹¡£º£²ó¤Ï¡¢Âè°ì°ú¿ô¤Ë¡¢¥¹¥³¥¢¤ÎÃͤòÊÝ»ý¤·¤Æ¤¤¤ëÊÑ¿ô
Score¤ò»ØÄꤷ¤Æ¤¤¤Þ¤¹¡£¤½¤·¤Æ¡¢ÂèÆó°ú¿ô¤Ë¤Ï¡¢¡Ø "00000000" ¡Ù¤È»ØÄꤵ¤ì¤Æ¤¤¤Þ¤¹¡£²¾¤Ë¡¢ÊÑ¿ô
Score¤ÎÃͤ¬¡Ø 1000 ¡Ù¤À¤Ã¤¿¾ì¹ç¤Ë¤Ï¡¢Format´Ø¿ô¤Ï¡Ø 00001000 ¡Ù¤È¤¤¤¦Ê¸»úÎó¤òÊÖ¤·¤Æ¤¤Þ¤¹¡£ÊÑ¿ôScore¤¬¡Ø 543210 ¡Ù¤À¤Ã¤¿¤é¡Ø 00543210 ¡Ù¤òÊÖ¤·¤Æ¤¤Þ¤¹¡£¤â¤¦¤ª¤ï¤«¤ê¤Ç¤¹¤Í¡©
Format´Ø¿ô¤ÎÂèÆó°ú¿ô¤Ç£¸·å¤Î¿ôÃͤȤ¤¤¦½ñ¼°¤ò»ØÄꤷ¤Æ¤¤¤ë¤Î¤Ç¡¢ÊÑ¿ôScore¤ÎÃͤ¬²¿·å¤Î¿ôÃͤǤ¢¤Ã¤Æ¤â¡¢É¬¤º£¸·å¤Îʸ»úÎó¤ËÀ°·Á¤µ¤ì¤Æ¤¤¤ë¤ï¤±¤Ç¤¹¡£¥·¥å¡¼¥Æ¥£¥ó¥°¥²¡¼¥à¤Ê¤É¤Î¥¹¥³¥¢É½¼¨¤Ç¤Ï¡¢¤É¤ó¤Ê¤Ë¥¹¥³¥¢¤¬¾¯¤Ê¤¤¤È¤¤Ç¤â¡¢Â¤ê¤Ê¤¤·å¿ô¤ÎÉôʬ¤Ï£°¤ÇËä¤Þ¤Ã¤Æ¤¤¤ë¤³¤È¤¬Â¿¤¤¤Ç¤¹¤è¤Í¡£
Format´Ø¿ô¤ò¤¦¤Þ¤¯»È¤¦¤³¤È¤Ë¤è¤Ã¤Æ¡¢´Êñ¤Ë¤³¤ì¤¬¼Â¸½¤Ç¤¤ë¤È¤¤¤¦¤ï¤±¤Ç¤¹¡£¤³¤Î´Ø¿ô¤Ï¡¢Ìá¤êÃͤȤ·¤ÆÆâÉôŪ¤Êʸ»úÎ󷿤òÊÖ¤·¤Æ¤¯¤ë¤Î¤Ç¡¢Caption¥×¥í¥Ñ¥Æ¥£¤È¤ÎÁêÀ¤â¤¤¤¤¤Î¤Ç¤¹¡£Àè¤Û¤É¤â½ñ¤¤Þ¤·¤¿¤¬¡¢
Format´Ø¿ô¤Ï¼Â¤Ë±ü¤¬¿¼¤¯¤Æ¡¢¤½¤ó¤Ê»È¤¤Êý¤¬¤¢¤ë¤Î¤«¡ª¡¡¤È¤Ä¤¤¸À¤¤¤¿¤¯¤Ê¤ë¤è¤¦¤Ê¤³¤È¤¬¤Ç¤¤¿¤ê¤·¤Þ¤¹¡£°ìÅÙÄ´¤Ù¤Æ¤ß¤ë¤³¤È¤ò¥ª¥¹¥¹¥á¤·¤Þ¤¹¡£¤ï¤«¤é¤Ê¤¤¤³¤È¤Ï¤È¤ê¤¢¤¨¤ºÄ´¤Ù¤Æ¤ß¤ë¡¢¤³¤ì¤Ï¥×¥í¥°¥é¥Þ¡¼¤Ë¤Ï·ç¤«¤»¤Ê¤¤½¬À¤Î¤Ò¤È¤Ä¤È¸À¤Ã¤Æ¤¤¤¤¤Ç¤·¤ç¤¦¡£¤³¤Î¹ÖºÂ¤Ç¤Ï²òÀ⤷¤Þ¤»¤ó¤¬¡¢Ä´¤Ù¤ë¤È¤¤¤í¤ó¤Ê¤³¤È¤¬¤ï¤«¤ë¤È»×¤¤¤Þ¤¹¤Î¤Ç¡¢¶½Ì£¤Î¤¢¤ë¤«¤¿¤Ï¤¬¤ó¤Ð¤Ã¤ÆÄ´¤Ù¤Æ¤ß¤Þ¤·¤ç¤¦¤Í¡£
¥¹¥³¥¢¤Ë¤Ä¤¤¤Æ¤Ï´Êñ¤Ç¤¹¤¬¤³¤ì¤Ç´°Î»¤Ç¤¹¡£Á´ÂΤΥ³¡¼¥É¤ÏºÜ¤»¤Þ¤»¤ó¤¬¡¢¿§¤Ä¤¤ÎÉôʬ¤òÄɲ䷤Ƥä¤ì¤Ð¡¢¤½¤ì¤À¤±¤Ç¤¦¤Þ¤¯¤¤¤¯¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Ï¤º¤Ç¤¹¡£
¼¡²ó¤Ï¥¿¥¤¥È¥ë²èÌ̤òºî¤ê¤Þ¤¹¡£¤ª³Ú¤·¤ß¤Ë¡£
¢£³Ê¸À
Caption¤Ë¤Ïʸ»úÎó¤ò»ØÄꤹ¤ëFormat´Ø¿ô¤ò͸ú¤ËÍøÍÑ¥¹¥³¥¢¤À¤±¤Ç¤Ê¤¯¡¢¥¿¥¤¥à¤òɽ¼¨¤·¤¿¤¤¾ì¹ç¤Ê¤É¤Ë¤â±þÍѤǤ¤Þ¤¹¡£





