NetworkMoving Improve
This commit is contained in:
parent
175fcde099
commit
eb54e59fa1
5 changed files with 24 additions and 5 deletions
|
@ -100,7 +100,10 @@ namespace DangerousD.GameCore.GameObjects.LivingEntities
|
||||||
isJump = false;
|
isJump = false;
|
||||||
}
|
}
|
||||||
base.Update(gameTime);
|
base.Update(gameTime);
|
||||||
Move(gameTime);
|
if (id == AppManager.Instance.GameManager.GetPlayer1.id)
|
||||||
|
{
|
||||||
|
Move(gameTime);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Move(GameTime gameTime)
|
public void Move(GameTime gameTime)
|
||||||
|
|
|
@ -59,7 +59,7 @@ namespace DangerousD.GameCore
|
||||||
resolution = SettingsManager.Resolution;
|
resolution = SettingsManager.Resolution;
|
||||||
_graphics.PreferredBackBufferWidth = resolution.X;
|
_graphics.PreferredBackBufferWidth = resolution.X;
|
||||||
_graphics.PreferredBackBufferHeight = resolution.Y;
|
_graphics.PreferredBackBufferHeight = resolution.Y;
|
||||||
_graphics.IsFullScreen = true;
|
_graphics.IsFullScreen = false;
|
||||||
gameState = GameState.Menu;
|
gameState = GameState.Menu;
|
||||||
MenuGUI = new MenuGUI();
|
MenuGUI = new MenuGUI();
|
||||||
LoginGUI = new LoginGUI();
|
LoginGUI = new LoginGUI();
|
||||||
|
@ -99,6 +99,7 @@ namespace DangerousD.GameCore
|
||||||
SoundManager.LoadSounds();
|
SoundManager.LoadSounds();
|
||||||
SoundManager.StartAmbientSound("DoomTestSong");
|
SoundManager.StartAmbientSound("DoomTestSong");
|
||||||
renderTarget = new RenderTarget2D(GraphicsDevice, inGameResolution.X, inGameResolution.Y);
|
renderTarget = new RenderTarget2D(GraphicsDevice, inGameResolution.X, inGameResolution.Y);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void Update(GameTime gameTime)
|
protected override void Update(GameTime gameTime)
|
||||||
|
@ -222,10 +223,17 @@ namespace DangerousD.GameCore
|
||||||
case NetworkTaskOperationEnum.ConnectToHost:
|
case NetworkTaskOperationEnum.ConnectToHost:
|
||||||
Player connectedPlayer = new Player(Vector2.Zero);
|
Player connectedPlayer = new Player(Vector2.Zero);
|
||||||
NetworkTasks.Add(new NetworkTask(connectedPlayer.id));
|
NetworkTasks.Add(new NetworkTask(connectedPlayer.id));
|
||||||
|
NetworkTask task = new NetworkTask();
|
||||||
|
NetworkTasks.Add(task.AddConnectedPlayer(GameManager.GetPlayer1.id, GameManager.GetPlayer1.Pos));
|
||||||
break;
|
break;
|
||||||
case NetworkTaskOperationEnum.GetClientPlayerId:
|
case NetworkTaskOperationEnum.GetClientPlayerId:
|
||||||
GameManager.GetPlayer1.id = networkTask.objId;
|
GameManager.GetPlayer1.id = networkTask.objId;
|
||||||
break;
|
break;
|
||||||
|
case NetworkTaskOperationEnum.AddConnectedPlayer:
|
||||||
|
Player remoteConnectedPlayer = new Player(networkTask.position);
|
||||||
|
remoteConnectedPlayer.id = networkTask.objId;
|
||||||
|
GameManager.players.Add(remoteConnectedPlayer);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,7 @@ using System.Collections.Generic;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using DangerousD.GameCore.GameObjects.LivingEntities.Monsters;
|
using DangerousD.GameCore.GameObjects.LivingEntities.Monsters;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using DangerousD.GameCore.GUI;
|
||||||
|
|
||||||
namespace DangerousD.GameCore
|
namespace DangerousD.GameCore
|
||||||
{
|
{
|
||||||
|
@ -100,6 +101,7 @@ namespace DangerousD.GameCore
|
||||||
|
|
||||||
public void Update(GameTime gameTime)
|
public void Update(GameTime gameTime)
|
||||||
{
|
{
|
||||||
|
AppManager.Instance.DebugHUD.Set("playerId: ", GetPlayer1.id.ToString());
|
||||||
if (AppManager.Instance.NetworkTasks.Count > 0)
|
if (AppManager.Instance.NetworkTasks.Count > 0)
|
||||||
{
|
{
|
||||||
AppManager.Instance.NetworkManager.SendMsg(AppManager.Instance.NetworkTasks.ToList());
|
AppManager.Instance.NetworkManager.SendMsg(AppManager.Instance.NetworkTasks.ToList());
|
||||||
|
@ -118,7 +120,6 @@ namespace DangerousD.GameCore
|
||||||
{
|
{
|
||||||
livingEntitiesWithoutPlayers[i].Update(gameTime);
|
livingEntitiesWithoutPlayers[i].Update(gameTime);
|
||||||
}
|
}
|
||||||
GetPlayer1.Update(gameTime);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -126,8 +127,8 @@ namespace DangerousD.GameCore
|
||||||
{
|
{
|
||||||
livingEntitiesWithoutPlayers[i].PlayAnimation();
|
livingEntitiesWithoutPlayers[i].PlayAnimation();
|
||||||
}
|
}
|
||||||
GetPlayer1.Update(gameTime);
|
|
||||||
}
|
}
|
||||||
|
GetPlayer1.Update(gameTime);
|
||||||
foreach (var item in otherObjects)
|
foreach (var item in otherObjects)
|
||||||
item.Update(gameTime);
|
item.Update(gameTime);
|
||||||
|
|
||||||
|
|
|
@ -128,5 +128,12 @@ namespace DangerousD.GameCore.Network
|
||||||
this.velocity = velocity;
|
this.velocity = velocity;
|
||||||
this.type = type;
|
this.type = type;
|
||||||
}
|
}
|
||||||
|
public NetworkTask AddConnectedPlayer(int connectedPlayerId, Vector2 playerPosition)
|
||||||
|
{
|
||||||
|
operation = NetworkTaskOperationEnum.AddConnectedPlayer;
|
||||||
|
objId = connectedPlayerId;
|
||||||
|
position = playerPosition;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,6 @@ namespace DangerousD.GameCore.Network
|
||||||
[Serializable]
|
[Serializable]
|
||||||
public enum NetworkTaskOperationEnum
|
public enum NetworkTaskOperationEnum
|
||||||
{
|
{
|
||||||
TakeDamage, SendSound, CreateEntity, SendPosition, ChangeState, ConnectToHost, GetClientPlayerId
|
TakeDamage, SendSound, CreateEntity, SendPosition, ChangeState, ConnectToHost, GetClientPlayerId, AddConnectedPlayer
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue