当我进入“点数”部分时,我想要播放视频,视频完成后,它将停止播放并自动转到主菜单(或按Escape
时导航到那里)。我也尝试在update
方法中播放它,但它不起作用,因为我得到一个错误(这不是代码错误)。我的代码:
int count==0;//the variable from main menu
Video vid;
VideoPlayer vidPlayer;
Texture2D texture;
Rectangle vidRect;
Initialize()
{
vidPlayer=new VideoPlayer();
}
LoadContent()
{
vid=Content.Load<Video>("credits");
vidPlayer.Play(vid);// Can I play it in Update methd?
vidRect= new Rectangle(0,0,800,600);
}
Update()
{
//stuffs...
if(count==5)
{
//if I press enter
{
count=6;
//I want to play it here
//if it finishes
{
count=5;
}
//if I press Escape
{
count=5;
//stop videoplayer
}
}
}
//stuffs...
}
Draw()
{
texture = vidPlayer.GetTexture();
//stuffs..
if(count==6)
{
spriteBatch.Draw(texture,vidRect,Color.White);
}
}
它起作用但是当我立即开始游戏时它会被播放。我可以管理它,就像我可以像SoundEffectInstance一样管理声音吗?视频也有什么东西吗?
我解决了这个问题!! 我在update方法中输入了以下代码:
if(count !=5)
{
vidPlayer.Stop();
}
if(count==5)
{
vidPlayer.Play(vid);
}
首先它不是函数,因为我将它从loadContent中删除并直接放入更新。