これまでのところ、私はジャンプアニメーションを持っています。ジャンプアニメーションを作成する画像の配列をループするために整数の「ジャンプ」を使用します。さらに、「ジャンプ」の数に応じて高さ「PositionY」が増減され、ジャンプが10になるとアニメーションが終了します.....これはタイマーやペイントイベントを使用することにより、ジャンプアニメーションコードジャンプアニメーションをウィンドウに挿入する
public Bitmap Jump_Frame2Draw()
{
Jump_Frames = new Bitmap[] { Jump_1, Jump_2, Jump_3, Jump_4, Jump_5, Jump_6, Jump_7,Jump_7,
Jump_8, Jump_8 };
if (jump < Jump_Frames.Length)
{
if (jump <= 3)
{
PositionY -= 30;
}
else if (jump == 8 || jump == 10)
{
PositionY += 0;
}
else
{
PositionY += 24;
}
jumpFrame = Jump_Frames[jump];
jump++;
if (jump == 10)
{
jumpTimer.Stop();
isJumping = false;
jump = 0;
standTimer.Start();
Invalidate();
}
}
tracer = jumpFrame.GetPixel(1, 1);
jumpFrame.MakeTransparent(tracer);
isJumping = true;
return jumpFrame;
}
ですが、私は単に私が指定されたジャンプキーを押したときにそれを描画するx秒ごとのINORDERこのメソッドを呼び出すことができますよ。 ..今私の問題は、私がジャンプアニメーションの真中にいると言って、私は元に戻っていきたいと思っています。それをダブルジャンプと考えてください。また、ジャンプと高さ(位置Y)は直接相関しています。ジャンプが0,1,2,3の場合、高さは214 - (ジャンプ+ 1)* 30)です。そうでなければジャンプは(5-9)高さは94 +(ジャンプ - 4)* 24)です。したがって、画像が描かれる最大の高さは94です(ウィンドウの形状は上と下が上になります...(0,0)は左上にあります)。視覚的観点については
///////////
、これは私のジャンプアニメに似ています。これは時間的に少し短くなっていますが、私が見つけることができる最高のものです。
ジャンプアニメーション:https://media.giphy.com/media/wXervlFEqohO0/giphy.gif
今、この男はアイアンマンだった想像し、彼がジャンプアップするために彼のジェットブースターを使用していますが、それでも空気中ながら、今、彼はただまっすぐ行くことにしました。
ヘルプのThx。
O btw、ちょうどあなたの意見のためにthxと言いたい、私は正しい方向に向かって私を動かし、私はインターフェイスが何かを学んだ:)。作業コードを見たい場合は、教えてください。 – Jamisco
steered * ....綴り訂正 – Jamisco
聞いてよかったです。 –