尝试使用图片框制作重力和跳跃功能和平台
try to make a gravity and jump function and platforms using picture boxes
嗨,我正在尝试为大学项目制作大金刚,我们必须使用 c# 和 visual studio。我为我的对象使用图片框,所以马里奥是一个图片框,平台也是。我正在尝试制作重力函数,但我可以控制马里奥的位置。它一直报错,我已经寻求帮助,但没有任何帮助。
bool right;
bool left;
int m_x, m_y, m_w, m_h;
int gravity = 5;
int speed = 5;
private void timer1_Tick(object sender, EventArgs e)
{
m_x = mario.Location.X;
m_y = mario.Location.Y;
m_w = mario.Size.Width;
m_h = mario.Size.Height;
Gravity();
if (right == true){ mario.Left += speed; }
if (left == true) { mario.Left -= speed; }
}
public void Gravity()
{
m_y += gravity;
mario.Location.Y = m_y;
}
我收到错误:
Error 1 Cannot modify the return value of 'System.Windows.Forms.Control.Location' because it is not a variable C:\Users\Albert\documents\visual studio 2013\Projects\DonkeyKongPB\DonkeyKongPB\Form1.cs 56 13 DonkeyKongPB
您可以改为 mario.Top = m_y
以获得相同的效果,因为您只修改 y
.
或者,如果您坚持按照自己的方式进行:
因为 Location
returns 一个 Point
结构你需要做:
Location = new Point(mario.Location.X, m_y);
嗨,我正在尝试为大学项目制作大金刚,我们必须使用 c# 和 visual studio。我为我的对象使用图片框,所以马里奥是一个图片框,平台也是。我正在尝试制作重力函数,但我可以控制马里奥的位置。它一直报错,我已经寻求帮助,但没有任何帮助。
bool right;
bool left;
int m_x, m_y, m_w, m_h;
int gravity = 5;
int speed = 5;
private void timer1_Tick(object sender, EventArgs e)
{
m_x = mario.Location.X;
m_y = mario.Location.Y;
m_w = mario.Size.Width;
m_h = mario.Size.Height;
Gravity();
if (right == true){ mario.Left += speed; }
if (left == true) { mario.Left -= speed; }
}
public void Gravity()
{
m_y += gravity;
mario.Location.Y = m_y;
}
我收到错误:
Error 1 Cannot modify the return value of 'System.Windows.Forms.Control.Location' because it is not a variable C:\Users\Albert\documents\visual studio 2013\Projects\DonkeyKongPB\DonkeyKongPB\Form1.cs 56 13 DonkeyKongPB
您可以改为 mario.Top = m_y
以获得相同的效果,因为您只修改 y
.
或者,如果您坚持按照自己的方式进行:
因为 Location
returns 一个 Point
结构你需要做:
Location = new Point(mario.Location.X, m_y);