# include <Siv3D.hpp> // OpenSiv3D v0.6.10
void Main()
{
// 背景の色を設定する | Set the background color
Scene::SetBackground(Palette::Lemonchiffon);
Vec2 p{ 100.0,100.0 };//x,y = 100, 100 で初期化
int W_WIDTH = Scene::Width();
int W_HEIGHT = Scene::Height();
float heroSpeed = 5.0;
Color heroColor = Palette::Red;
//単位ベクトル
//ベクトルの長さ、ベクトルで計算できるよ!
Vec2 ul{ -1.0, -1.0 }, ur{ +1.0, -1.0 }, dl{ -1.0, +1.0 }, dr{ +1.0, +1.0 }; //方向だけあってるベクトルを用意
ul.x = ul.x / ul.length();
ul.y = ul.y / ul.length();
ur.x = ur.x / ur.length();
ur.y = ur.y / ur.length();
dl.x = dl.x / dl.length();
dl.y = dl.y / dl.length();
dr.x = dr.x / dr.length();
dr.y = dr.y / dr.length();
Print << ul.length();
while (System::Update())
{
if ((KeyLeft + KeyUp).pressed())
p = p + heroSpeed*ul;
else if ((KeyLeft + KeyDown).pressed())
p = p + heroSpeed * dl;
else if ((KeyRight + KeyUp).pressed())
p = p + heroSpeed * ur;
else if ((KeyRight + KeyDown).pressed())
p = p + heroSpeed * dr;
else if(KeyLeft.pressed())
p.x = p.x - heroSpeed;
else if(KeyRight.pressed())
p.x = p.x + heroSpeed;
else if(KeyUp.pressed())
p.y = p.y - heroSpeed;
else if (KeyDown.pressed())
p.y = p.y + heroSpeed;
Circle{p, 10}.draw(heroColor);
}
}