//usingディレクティブで名前空間の参照を簡単にします。
using System;
using System.Drawing;
using System.Windows.Forms;
using Wakaba;
namespace Game
{
class Game
{
private const int MAPCHIP_SIZE = 32;
private const int SCROLL_SPEED = 4;
//オブジェクト変数を宣言します。
private static Helper w;
[STAThread]
static void Main(string[] args)
{
try
{
int i;
int j;
Random objRnd = new Random();
int intRnd;
int intScroll = 0;
//オブジェクト変数をインスタンス化します。
w = new Helper();
//若葉ヘルパーを初期化します。
w.Initialize();
//リソースのビットマップからスプライトを作成します。
w.SpriteCreate("マップチップ", MyGame1.Properties.Resources.map, Helper.TransparentColor.None);
w.SpriteCreate("背景1", 640, 480);
w.SpriteShow("背景1");
w.SpriteCreate("背景2", 640, 480);
w.SpriteShow("背景2");
for (i = 0; i <= 14; i++)
{
for (j = 0; j <= 19; j++)
{
intRnd = objRnd.Next(0, 3);
w.SpriteCopy("背景1", (short)(j * MAPCHIP_SIZE), (short)(i * MAPCHIP_SIZE), "マップチップ", intRnd * MAPCHIP_SIZE, 0, MAPCHIP_SIZE, MAPCHIP_SIZE);
}
}
w.SpriteCopy("背景2", 0, 0, "背景1", 0, 0, 640, 480);
//ウィンドウを閉じるまで画面を更新します。
do
{
w.SpritePosition("背景1", 0, 0, intScroll);
w.SpritePosition("背景2", 0, 0, intScroll - 480);
intScroll += SCROLL_SPEED;
if (intScroll > 480)
{
intScroll = 0;
}
w.ScreenRefresh(true);
} while (!w.WindowClosing);
}
catch (Exception ex)
{
//エラーメッセージを表示します。
MessageBox.Show(ex.Message + ex.StackTrace);
}
//若葉ヘルパーのオブジェクトを破棄します。
w.Dispose();
}
}
}