Shot and Shooting Classes added (not working yet)
This commit is contained in:
@@ -0,0 +1,57 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace DepthsBelow.Component
|
||||||
|
{
|
||||||
|
class Shooting : Component
|
||||||
|
{
|
||||||
|
protected int stepsTaken = 0;
|
||||||
|
protected int distanceToTarget = 0;
|
||||||
|
protected int panic = 0;
|
||||||
|
protected int soldierAim = 0;
|
||||||
|
protected int weaponAccuracy = 0;
|
||||||
|
protected int enemyDodge = 0;
|
||||||
|
|
||||||
|
protected int penaltyRange = 5;
|
||||||
|
|
||||||
|
public Shooting(Entity parent) : base (parent)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public int CalculateChance()
|
||||||
|
{
|
||||||
|
int baseHitChance = soldierAim + weaponAccuracy;
|
||||||
|
int baseDodgeChance = panic + enemyDodge;
|
||||||
|
int basePenalty = ReturnPenalty(stepsTaken) + (int)(ReturnPenalty(distanceToTarget) / 2);
|
||||||
|
int chanceToHit = baseHitChance - baseDodgeChance - basePenalty;
|
||||||
|
return chanceToHit;
|
||||||
|
}
|
||||||
|
|
||||||
|
public int ReturnPenalty(int distance)
|
||||||
|
{
|
||||||
|
int penalty = 0;
|
||||||
|
if (distance >= penaltyRange * 3)
|
||||||
|
{
|
||||||
|
penalty = 100;
|
||||||
|
}
|
||||||
|
else if (distance >= penaltyRange * 2)
|
||||||
|
{
|
||||||
|
distance -= penaltyRange * 2;
|
||||||
|
penalty = penaltyRange + penaltyRange * 3 + distance * 5;
|
||||||
|
}
|
||||||
|
else if (distance >= penaltyRange)
|
||||||
|
{
|
||||||
|
distance -= penaltyRange;
|
||||||
|
penalty = penaltyRange + distance * 3;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
penalty = distance;
|
||||||
|
}
|
||||||
|
return penalty;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
+211
-202
@@ -1,202 +1,211 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using DepthsBelow.GUI;
|
using DepthsBelow.GUI;
|
||||||
using Microsoft.Xna.Framework;
|
using Microsoft.Xna.Framework;
|
||||||
using Microsoft.Xna.Framework.Audio;
|
using Microsoft.Xna.Framework.Audio;
|
||||||
using Microsoft.Xna.Framework.Content;
|
using Microsoft.Xna.Framework.Content;
|
||||||
using Microsoft.Xna.Framework.GamerServices;
|
using Microsoft.Xna.Framework.GamerServices;
|
||||||
using Microsoft.Xna.Framework.Graphics;
|
using Microsoft.Xna.Framework.Graphics;
|
||||||
using Microsoft.Xna.Framework.Input;
|
using Microsoft.Xna.Framework.Input;
|
||||||
using Microsoft.Xna.Framework.Media;
|
using Microsoft.Xna.Framework.Media;
|
||||||
|
|
||||||
namespace DepthsBelow
|
namespace DepthsBelow
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// This is the main type for your game
|
/// This is the main type for your game
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class Core : Microsoft.Xna.Framework.Game
|
public class Core : Microsoft.Xna.Framework.Game
|
||||||
{
|
{
|
||||||
public static GraphicsDeviceManager GraphicsDeviceManager;
|
public static GraphicsDeviceManager GraphicsDeviceManager;
|
||||||
SpriteBatch spriteBatch;
|
SpriteBatch spriteBatch;
|
||||||
|
|
||||||
public Camera Camera;
|
public Camera Camera;
|
||||||
|
|
||||||
public bool PlayerTurn = true;
|
public bool PlayerTurn = true;
|
||||||
public static MouseInput MouseInput;
|
public static MouseInput MouseInput;
|
||||||
public static KeyboardInput KeyboardInput;
|
public static KeyboardInput KeyboardInput;
|
||||||
public List<Soldier> Squad;
|
public List<Soldier> Squad;
|
||||||
public List<SmallEnemy> Swarm;
|
public List<SmallEnemy> Swarm;
|
||||||
public static Map Map;
|
public List<Shot> Volley;
|
||||||
|
public static Map Map;
|
||||||
public SmallEnemy TestMonster;
|
|
||||||
|
public SmallEnemy TestMonster;
|
||||||
public Core()
|
|
||||||
{
|
public Core()
|
||||||
GraphicsDeviceManager = new GraphicsDeviceManager(this);
|
{
|
||||||
Content.RootDirectory = "Content";
|
GraphicsDeviceManager = new GraphicsDeviceManager(this);
|
||||||
|
Content.RootDirectory = "Content";
|
||||||
GraphicsDeviceManager.PreferredBackBufferWidth = 1280;
|
|
||||||
GraphicsDeviceManager.PreferredBackBufferHeight = 720;
|
GraphicsDeviceManager.PreferredBackBufferWidth = 1280;
|
||||||
GraphicsDeviceManager.IsFullScreen = false;
|
GraphicsDeviceManager.PreferredBackBufferHeight = 720;
|
||||||
|
GraphicsDeviceManager.IsFullScreen = false;
|
||||||
//graphics.SynchronizeWithVerticalRetrace = false;
|
|
||||||
this.IsFixedTimeStep = false;
|
//graphics.SynchronizeWithVerticalRetrace = false;
|
||||||
GraphicsDeviceManager.ApplyChanges();
|
this.IsFixedTimeStep = false;
|
||||||
|
GraphicsDeviceManager.ApplyChanges();
|
||||||
this.IsMouseVisible = true;
|
|
||||||
}
|
this.IsMouseVisible = true;
|
||||||
|
}
|
||||||
/// <summary>
|
|
||||||
/// Allows the game to perform any initialization it needs to before starting to run.
|
/// <summary>
|
||||||
/// This is where it can query for any required services and load any non-graphic
|
/// Allows the game to perform any initialization it needs to before starting to run.
|
||||||
/// related content. Calling base.Initialize will enumerate through any components
|
/// This is where it can query for any required services and load any non-graphic
|
||||||
/// and initialize them as well.
|
/// related content. Calling base.Initialize will enumerate through any components
|
||||||
/// </summary>
|
/// and initialize them as well.
|
||||||
protected override void Initialize()
|
/// </summary>
|
||||||
{
|
protected override void Initialize()
|
||||||
// TODO: Add your initialization logic here
|
{
|
||||||
Camera = new Camera(this);
|
// TODO: Add your initialization logic here
|
||||||
Squad = new List<Soldier>();
|
Camera = new Camera(this);
|
||||||
Swarm = new List<SmallEnemy>();
|
Squad = new List<Soldier>();
|
||||||
|
Swarm = new List<SmallEnemy>();
|
||||||
TestMonster = new SmallEnemy(this, ref Swarm);
|
Volley = new List<Shot>();
|
||||||
|
|
||||||
base.Initialize();
|
TestMonster = new SmallEnemy(this, ref Swarm);
|
||||||
}
|
|
||||||
|
base.Initialize();
|
||||||
/// <summary>
|
}
|
||||||
/// LoadContent will be called once per game and is the place to load
|
|
||||||
/// all of your content.
|
/// <summary>
|
||||||
/// </summary>
|
/// LoadContent will be called once per game and is the place to load
|
||||||
protected override void LoadContent()
|
/// all of your content.
|
||||||
{
|
/// </summary>
|
||||||
// Create a new SpriteBatch, which can be used to draw textures.
|
protected override void LoadContent()
|
||||||
spriteBatch = new SpriteBatch(GraphicsDevice);
|
{
|
||||||
|
// Create a new SpriteBatch, which can be used to draw textures.
|
||||||
Map = Content.Load<Map>("maps/Cave.Level1");
|
spriteBatch = new SpriteBatch(GraphicsDevice);
|
||||||
// Load map objects
|
|
||||||
Map.ParseObjects(this);
|
Map = Content.Load<Map>("maps/Cave.Level1");
|
||||||
|
// Load map objects
|
||||||
// TODO: use this.Content to load your game content here
|
Map.ParseObjects(this);
|
||||||
Soldier.LoadContent(this);
|
|
||||||
SmallEnemy.LoadContent(this);
|
// TODO: use this.Content to load your game content here
|
||||||
|
Soldier.LoadContent(this);
|
||||||
MouseInput = new MouseInput(this);
|
SmallEnemy.LoadContent(this);
|
||||||
MouseInput.LoadContent();
|
Shot.LoadContent(this);
|
||||||
KeyboardInput = new KeyboardInput(this);
|
|
||||||
|
MouseInput = new MouseInput(this);
|
||||||
TestMonster.X = 12;
|
MouseInput.LoadContent();
|
||||||
TestMonster.Y = 4;
|
KeyboardInput = new KeyboardInput(this);
|
||||||
// Test GUI frames
|
|
||||||
var frame = new GUI.Button()
|
TestMonster.X = 12;
|
||||||
{
|
TestMonster.Y = 4;
|
||||||
X = 100,
|
// Test GUI frames
|
||||||
Width = 48,
|
var frame = new GUI.Button()
|
||||||
Height = 23,
|
{
|
||||||
Texture = Content.Load<Texture2D>("images/Enter"),
|
X = 100,
|
||||||
OnClick = delegate(Point clickPos)
|
Width = 48,
|
||||||
{
|
Height = 23,
|
||||||
Debug.WriteLine("That ugly button was clicked at (" + clickPos.X + "," + clickPos.Y + ")");
|
Texture = Content.Load<Texture2D>("images/Enter"),
|
||||||
}
|
OnClick = delegate(Point clickPos)
|
||||||
};
|
{
|
||||||
var text = new GUI.Text(Content.Load<SpriteFont>("Arial"));
|
Debug.WriteLine("That ugly button was clicked at (" + clickPos.X + "," + clickPos.Y + ")");
|
||||||
text.Value = "Hello world!";
|
}
|
||||||
frame.Add(text);
|
};
|
||||||
}
|
var text = new GUI.Text(Content.Load<SpriteFont>("Arial"));
|
||||||
|
text.Value = "Hello world!";
|
||||||
/// <summary>
|
frame.Add(text);
|
||||||
/// UnloadContent will be called once per game and is the place to unload
|
}
|
||||||
/// all content.
|
|
||||||
/// </summary>
|
/// <summary>
|
||||||
protected override void UnloadContent()
|
/// UnloadContent will be called once per game and is the place to unload
|
||||||
{
|
/// all content.
|
||||||
// TODO: Unload any non ContentManager content here
|
/// </summary>
|
||||||
}
|
protected override void UnloadContent()
|
||||||
|
{
|
||||||
/// <summary>
|
// TODO: Unload any non ContentManager content here
|
||||||
/// Allows the game to run logic such as updating the world,
|
}
|
||||||
/// checking for collisions, gathering input, and playing audio.
|
|
||||||
/// </summary>
|
/// <summary>
|
||||||
/// <param name="gameTime">Provides a snapshot of timing values.</param>
|
/// Allows the game to run logic such as updating the world,
|
||||||
protected override void Update(GameTime gameTime)
|
/// checking for collisions, gathering input, and playing audio.
|
||||||
{
|
/// </summary>
|
||||||
// Allows the game to exit
|
/// <param name="gameTime">Provides a snapshot of timing values.</param>
|
||||||
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
|
protected override void Update(GameTime gameTime)
|
||||||
this.Exit();
|
{
|
||||||
|
// Allows the game to exit
|
||||||
Camera.Update(gameTime);
|
if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
|
||||||
MouseInput.Update(gameTime);
|
this.Exit();
|
||||||
KeyboardInput.Update(gameTime);
|
|
||||||
|
Camera.Update(gameTime);
|
||||||
// Update soldiers in squad
|
MouseInput.Update(gameTime);
|
||||||
foreach (var soldier in Squad)
|
KeyboardInput.Update(gameTime);
|
||||||
soldier.Update(gameTime);
|
|
||||||
|
// Update soldiers in squad
|
||||||
foreach (var body in Swarm)
|
foreach (var soldier in Squad)
|
||||||
body.Update(gameTime);
|
soldier.Update(gameTime);
|
||||||
|
|
||||||
TestMonster.Update(gameTime);
|
foreach (var body in Swarm)
|
||||||
GUIManager.Update(gameTime);
|
body.Update(gameTime);
|
||||||
|
|
||||||
base.Update(gameTime);
|
TestMonster.Update(gameTime);
|
||||||
}
|
GUIManager.Update(gameTime);
|
||||||
|
|
||||||
public int FindDistance(Vector2 target, Vector2 start)
|
base.Update(gameTime);
|
||||||
{
|
}
|
||||||
Vector2 combine = new Vector2(target.X - start.X, target.Y - start.Y);
|
|
||||||
|
public int FindDistance(Vector2 target, Vector2 start)
|
||||||
int result = 0;
|
{
|
||||||
int firstRestult = (int)Math.Sqrt((int)combine.X^2 + (int)combine.Y^2);
|
Vector2 combine = new Vector2(target.X - start.X, target.Y - start.Y);
|
||||||
|
|
||||||
result = (int)Vector2.Distance(target, start);
|
int result = 0;
|
||||||
|
int firstRestult = (int)Math.Sqrt((int)combine.X^2 + (int)combine.Y^2);
|
||||||
return result;
|
|
||||||
}
|
result = (int)Vector2.Distance(target, start);
|
||||||
|
|
||||||
/// <summary>
|
return result;
|
||||||
/// This is called when the game should draw itself.
|
}
|
||||||
/// </summary>
|
|
||||||
/// <param name="gameTime">Provides a snapshot of timing values.</param>
|
/// <summary>
|
||||||
protected override void Draw(GameTime gameTime)
|
/// This is called when the game should draw itself.
|
||||||
{
|
/// </summary>
|
||||||
GraphicsDevice.Clear(Color.Black);
|
/// <param name="gameTime">Provides a snapshot of timing values.</param>
|
||||||
|
protected override void Draw(GameTime gameTime)
|
||||||
// Start drawing using the Camera transform
|
{
|
||||||
spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.PointClamp, null, null, null,
|
GraphicsDevice.Clear(Color.Black);
|
||||||
Camera.Transform);
|
|
||||||
|
// Start drawing using the Camera transform
|
||||||
// Draw the level
|
spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.PointClamp, null, null, null,
|
||||||
Map.Draw(spriteBatch);
|
Camera.Transform);
|
||||||
|
|
||||||
// Draw units
|
// Draw the level
|
||||||
foreach (var soldier in Squad)
|
Map.Draw(spriteBatch);
|
||||||
{
|
|
||||||
var sr = soldier.GetComponent<Component.SpriteRenderer>();
|
// Draw units
|
||||||
if (sr != null)
|
foreach (var soldier in Squad)
|
||||||
sr.Draw(spriteBatch);
|
{
|
||||||
}
|
var sr = soldier.GetComponent<Component.SpriteRenderer>();
|
||||||
foreach (var body in Swarm)
|
if (sr != null)
|
||||||
{
|
sr.Draw(spriteBatch);
|
||||||
var sr = body.GetComponent<Component.SpriteRenderer>();
|
}
|
||||||
if (sr != null)
|
foreach (var body in Swarm)
|
||||||
sr.Draw(spriteBatch);
|
{
|
||||||
}
|
var sr = body.GetComponent<Component.SpriteRenderer>();
|
||||||
|
if (sr != null)
|
||||||
// Draw mouse input visuals
|
sr.Draw(spriteBatch);
|
||||||
MouseInput.Draw(spriteBatch);
|
}
|
||||||
|
foreach (var bullet in Volley)
|
||||||
TestMonster.GetComponent<Component.SpriteRenderer>().Draw(spriteBatch);
|
{
|
||||||
|
var sr = bullet.GetComponent<Component.SpriteRenderer>();
|
||||||
spriteBatch.End();
|
if (sr != null)
|
||||||
|
sr.Draw(spriteBatch);
|
||||||
// Start drawing GUI components
|
}
|
||||||
spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.AnisotropicClamp, null, null, null, Matrix.Identity);
|
|
||||||
GUIManager.Draw(spriteBatch);
|
// Draw mouse input visuals
|
||||||
spriteBatch.End();
|
MouseInput.Draw(spriteBatch);
|
||||||
|
|
||||||
base.Draw(gameTime);
|
TestMonster.GetComponent<Component.SpriteRenderer>().Draw(spriteBatch);
|
||||||
}
|
|
||||||
}
|
spriteBatch.End();
|
||||||
}
|
|
||||||
|
// Start drawing GUI components
|
||||||
|
spriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.AnisotropicClamp, null, null, null, Matrix.Identity);
|
||||||
|
GUIManager.Draw(spriteBatch);
|
||||||
|
spriteBatch.End();
|
||||||
|
|
||||||
|
base.Draw(gameTime);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -1,198 +1,200 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ProjectGuid>{94683C5B-052D-4143-96D8-35C67E831000}</ProjectGuid>
|
<ProjectGuid>{94683C5B-052D-4143-96D8-35C67E831000}</ProjectGuid>
|
||||||
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
<ProjectTypeGuids>{6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||||
<OutputType>WinExe</OutputType>
|
<OutputType>WinExe</OutputType>
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
<RootNamespace>DepthsBelow</RootNamespace>
|
<RootNamespace>DepthsBelow</RootNamespace>
|
||||||
<AssemblyName>DepthsBelow</AssemblyName>
|
<AssemblyName>DepthsBelow</AssemblyName>
|
||||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
|
||||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||||
<XnaPlatform>Windows</XnaPlatform>
|
<XnaPlatform>Windows</XnaPlatform>
|
||||||
<XnaProfile>HiDef</XnaProfile>
|
<XnaProfile>HiDef</XnaProfile>
|
||||||
<XnaCrossPlatformGroupID>faa0577e-a03e-43cf-89c7-0a03f4c22717</XnaCrossPlatformGroupID>
|
<XnaCrossPlatformGroupID>faa0577e-a03e-43cf-89c7-0a03f4c22717</XnaCrossPlatformGroupID>
|
||||||
<XnaOutputType>Game</XnaOutputType>
|
<XnaOutputType>Game</XnaOutputType>
|
||||||
<ApplicationIcon>Game.ico</ApplicationIcon>
|
<ApplicationIcon>Game.ico</ApplicationIcon>
|
||||||
<Thumbnail>GameThumbnail.png</Thumbnail>
|
<Thumbnail>GameThumbnail.png</Thumbnail>
|
||||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||||
<PublishUrl>publish\</PublishUrl>
|
<PublishUrl>publish\</PublishUrl>
|
||||||
<Install>true</Install>
|
<Install>true</Install>
|
||||||
<InstallFrom>Disk</InstallFrom>
|
<InstallFrom>Disk</InstallFrom>
|
||||||
<UpdateEnabled>false</UpdateEnabled>
|
<UpdateEnabled>false</UpdateEnabled>
|
||||||
<UpdateMode>Foreground</UpdateMode>
|
<UpdateMode>Foreground</UpdateMode>
|
||||||
<UpdateInterval>7</UpdateInterval>
|
<UpdateInterval>7</UpdateInterval>
|
||||||
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||||
<UpdatePeriodically>false</UpdatePeriodically>
|
<UpdatePeriodically>false</UpdatePeriodically>
|
||||||
<UpdateRequired>false</UpdateRequired>
|
<UpdateRequired>false</UpdateRequired>
|
||||||
<MapFileExtensions>true</MapFileExtensions>
|
<MapFileExtensions>true</MapFileExtensions>
|
||||||
<ApplicationRevision>1</ApplicationRevision>
|
<ApplicationRevision>1</ApplicationRevision>
|
||||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||||
<UseApplicationTrust>false</UseApplicationTrust>
|
<UseApplicationTrust>false</UseApplicationTrust>
|
||||||
<PublishWizardCompleted>true</PublishWizardCompleted>
|
<PublishWizardCompleted>true</PublishWizardCompleted>
|
||||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
<DebugType>full</DebugType>
|
<DebugType>full</DebugType>
|
||||||
<Optimize>false</Optimize>
|
<Optimize>false</Optimize>
|
||||||
<OutputPath>bin\x86\Debug</OutputPath>
|
<OutputPath>bin\x86\Debug</OutputPath>
|
||||||
<DefineConstants>DEBUG;TRACE;WINDOWS</DefineConstants>
|
<DefineConstants>DEBUG;TRACE;WINDOWS</DefineConstants>
|
||||||
<ErrorReport>prompt</ErrorReport>
|
<ErrorReport>prompt</ErrorReport>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<NoStdLib>true</NoStdLib>
|
<NoStdLib>true</NoStdLib>
|
||||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
<XnaCompressContent>false</XnaCompressContent>
|
<XnaCompressContent>false</XnaCompressContent>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
|
||||||
<DebugType>pdbonly</DebugType>
|
<DebugType>pdbonly</DebugType>
|
||||||
<Optimize>true</Optimize>
|
<Optimize>true</Optimize>
|
||||||
<OutputPath>bin\x86\Release</OutputPath>
|
<OutputPath>bin\x86\Release</OutputPath>
|
||||||
<DefineConstants>TRACE;WINDOWS</DefineConstants>
|
<DefineConstants>TRACE;WINDOWS</DefineConstants>
|
||||||
<ErrorReport>prompt</ErrorReport>
|
<ErrorReport>prompt</ErrorReport>
|
||||||
<WarningLevel>4</WarningLevel>
|
<WarningLevel>4</WarningLevel>
|
||||||
<NoStdLib>true</NoStdLib>
|
<NoStdLib>true</NoStdLib>
|
||||||
<UseVSHostingProcess>false</UseVSHostingProcess>
|
<UseVSHostingProcess>false</UseVSHostingProcess>
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
<XnaCompressContent>true</XnaCompressContent>
|
<XnaCompressContent>true</XnaCompressContent>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ManifestCertificateThumbprint>ECE66DEF071576E8D2F7D57232C0569623E3E2DF</ManifestCertificateThumbprint>
|
<ManifestCertificateThumbprint>ECE66DEF071576E8D2F7D57232C0569623E3E2DF</ManifestCertificateThumbprint>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ManifestKeyFile>DepthsBelow_TemporaryKey.pfx</ManifestKeyFile>
|
<ManifestKeyFile>DepthsBelow_TemporaryKey.pfx</ManifestKeyFile>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<GenerateManifests>true</GenerateManifests>
|
<GenerateManifests>true</GenerateManifests>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<SignManifests>true</SignManifests>
|
<SignManifests>true</SignManifests>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
<Reference Include="Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="mscorlib">
|
<Reference Include="mscorlib">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System">
|
<Reference Include="System">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="System.Xml">
|
<Reference Include="System.Xml">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Core">
|
<Reference Include="System.Core">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Xml.Linq">
|
<Reference Include="System.Xml.Linq">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Net">
|
<Reference Include="System.Net">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Camera.cs" />
|
<Compile Include="Camera.cs" />
|
||||||
<Compile Include="GUIManager.cs" />
|
<Compile Include="Shot.cs" />
|
||||||
<Compile Include="GUI\Button.cs" />
|
<Compile Include="Component\Shooting.cs" />
|
||||||
<Compile Include="GUI\Frame.cs" />
|
<Compile Include="GUIManager.cs" />
|
||||||
<Compile Include="GUI\Text.cs" />
|
<Compile Include="GUI\Button.cs" />
|
||||||
<Compile Include="KeyboardInput.cs" />
|
<Compile Include="GUI\Frame.cs" />
|
||||||
<Compile Include="Component\PathFinder.cs" />
|
<Compile Include="GUI\Text.cs" />
|
||||||
<Compile Include="Component\Transform.cs" />
|
<Compile Include="KeyboardInput.cs" />
|
||||||
<Compile Include="Grid.cs" />
|
<Compile Include="Component\PathFinder.cs" />
|
||||||
<Compile Include="Component\Collision.cs" />
|
<Compile Include="Component\Transform.cs" />
|
||||||
<Compile Include="Component\Component.cs" />
|
<Compile Include="Grid.cs" />
|
||||||
<Compile Include="Component\GridTransform.cs" />
|
<Compile Include="Component\Collision.cs" />
|
||||||
<Compile Include="Core.cs" />
|
<Compile Include="Component\Component.cs" />
|
||||||
<Compile Include="Entity.cs" />
|
<Compile Include="Component\GridTransform.cs" />
|
||||||
<Compile Include="Map.cs" />
|
<Compile Include="Core.cs" />
|
||||||
<Compile Include="MouseInput.cs" />
|
<Compile Include="Entity.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Map.cs" />
|
||||||
<Compile Include="Program.cs" />
|
<Compile Include="MouseInput.cs" />
|
||||||
<Compile Include="Component\SpriteRenderer.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="RenderHelpers.cs" />
|
<Compile Include="Program.cs" />
|
||||||
<Compile Include="SmallEnemy.cs" />
|
<Compile Include="Component\SpriteRenderer.cs" />
|
||||||
<Compile Include="Soldier.cs" />
|
<Compile Include="RenderHelpers.cs" />
|
||||||
<Compile Include="Component\PixelTransform.cs" />
|
<Compile Include="SmallEnemy.cs" />
|
||||||
</ItemGroup>
|
<Compile Include="Soldier.cs" />
|
||||||
<ItemGroup>
|
<Compile Include="Component\PixelTransform.cs" />
|
||||||
<Content Include="Game.ico" />
|
</ItemGroup>
|
||||||
<Content Include="GameThumbnail.png" />
|
<ItemGroup>
|
||||||
</ItemGroup>
|
<Content Include="Game.ico" />
|
||||||
<ItemGroup>
|
<Content Include="GameThumbnail.png" />
|
||||||
<ProjectReference Include="..\..\AStar\AStar.csproj">
|
</ItemGroup>
|
||||||
<Project>{CD3F949D-54AA-4D38-99DB-92905A375D84}</Project>
|
<ItemGroup>
|
||||||
<Name>AStar</Name>
|
<ProjectReference Include="..\..\AStar\AStar.csproj">
|
||||||
</ProjectReference>
|
<Project>{CD3F949D-54AA-4D38-99DB-92905A375D84}</Project>
|
||||||
<ProjectReference Include="..\DepthsBelowContent\DepthsBelowContent.contentproj">
|
<Name>AStar</Name>
|
||||||
<Name>DepthsBelowContent %28Content%29</Name>
|
</ProjectReference>
|
||||||
<XnaReferenceType>Content</XnaReferenceType>
|
<ProjectReference Include="..\DepthsBelowContent\DepthsBelowContent.contentproj">
|
||||||
<Project>{433A77A2-DE52-4875-A4EF-232CF59C2DD3}</Project>
|
<Name>DepthsBelowContent %28Content%29</Name>
|
||||||
</ProjectReference>
|
<XnaReferenceType>Content</XnaReferenceType>
|
||||||
</ItemGroup>
|
<Project>{433A77A2-DE52-4875-A4EF-232CF59C2DD3}</Project>
|
||||||
<ItemGroup>
|
</ProjectReference>
|
||||||
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
|
</ItemGroup>
|
||||||
<Visible>False</Visible>
|
<ItemGroup>
|
||||||
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 and x64%29</ProductName>
|
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
|
||||||
<Install>true</Install>
|
<Visible>False</Visible>
|
||||||
</BootstrapperPackage>
|
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 and x64%29</ProductName>
|
||||||
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
<Install>true</Install>
|
||||||
<Visible>False</Visible>
|
</BootstrapperPackage>
|
||||||
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
|
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
||||||
<Install>false</Install>
|
<Visible>False</Visible>
|
||||||
</BootstrapperPackage>
|
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
|
||||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
<Install>false</Install>
|
||||||
<Visible>False</Visible>
|
</BootstrapperPackage>
|
||||||
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||||
<Install>false</Install>
|
<Visible>False</Visible>
|
||||||
</BootstrapperPackage>
|
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||||
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
|
<Install>false</Install>
|
||||||
<Visible>False</Visible>
|
</BootstrapperPackage>
|
||||||
<ProductName>Windows Installer 3.1</ProductName>
|
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
|
||||||
<Install>true</Install>
|
<Visible>False</Visible>
|
||||||
</BootstrapperPackage>
|
<ProductName>Windows Installer 3.1</ProductName>
|
||||||
<BootstrapperPackage Include="Microsoft.Xna.Framework.4.0">
|
<Install>true</Install>
|
||||||
<Visible>False</Visible>
|
</BootstrapperPackage>
|
||||||
<ProductName>Microsoft XNA Framework Redistributable 4.0</ProductName>
|
<BootstrapperPackage Include="Microsoft.Xna.Framework.4.0">
|
||||||
<Install>true</Install>
|
<Visible>False</Visible>
|
||||||
</BootstrapperPackage>
|
<ProductName>Microsoft XNA Framework Redistributable 4.0</ProductName>
|
||||||
</ItemGroup>
|
<Install>true</Install>
|
||||||
<ItemGroup>
|
</BootstrapperPackage>
|
||||||
<None Include="DepthsBelow_TemporaryKey.pfx" />
|
</ItemGroup>
|
||||||
</ItemGroup>
|
<ItemGroup>
|
||||||
<ItemGroup />
|
<None Include="DepthsBelow_TemporaryKey.pfx" />
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
<ItemGroup />
|
||||||
|
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\Microsoft.Xna.GameStudio.targets" />
|
||||||
<!--
|
<!--
|
||||||
To modify your build process, add your task inside one of the targets below and uncomment it.
|
To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
@@ -200,5 +202,5 @@
|
|||||||
</Target>
|
</Target>
|
||||||
<Target Name="AfterBuild">
|
<Target Name="AfterBuild">
|
||||||
</Target>
|
</Target>
|
||||||
-->
|
-->
|
||||||
</Project>
|
</Project>
|
||||||
@@ -1,78 +1,82 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
using Microsoft.Xna.Framework;
|
using Microsoft.Xna.Framework;
|
||||||
using Microsoft.Xna.Framework.Content;
|
using Microsoft.Xna.Framework.Content;
|
||||||
using Microsoft.Xna.Framework.Graphics;
|
using Microsoft.Xna.Framework.Graphics;
|
||||||
using Microsoft.Xna.Framework.Input;
|
using Microsoft.Xna.Framework.Input;
|
||||||
using Microsoft.Xna.Framework.Media;
|
using Microsoft.Xna.Framework.Media;
|
||||||
|
|
||||||
namespace DepthsBelow
|
namespace DepthsBelow
|
||||||
{
|
{
|
||||||
public class KeyboardInput
|
public class KeyboardInput
|
||||||
{
|
{
|
||||||
Core core;
|
Core core;
|
||||||
bool Enter = false;
|
bool Enter = false;
|
||||||
bool turn;
|
bool turn;
|
||||||
|
|
||||||
public KeyboardInput(Core core)
|
public KeyboardInput(Core core)
|
||||||
{
|
{
|
||||||
this.core = core;
|
this.core = core;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Update(GameTime gameTime)
|
public void Update(GameTime gameTime)
|
||||||
{
|
{
|
||||||
KeyboardState ks = Keyboard.GetState();
|
KeyboardState ks = Keyboard.GetState();
|
||||||
|
|
||||||
if (ks.IsKeyUp(Keys.Enter) && Enter == true)
|
if (ks.IsKeyUp(Keys.Enter) && Enter == true)
|
||||||
{
|
{
|
||||||
Enter = false;
|
Enter = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ks.IsKeyDown(Keys.Enter) && Enter == false)
|
if (ks.IsKeyDown(Keys.Enter) && Enter == false)
|
||||||
{
|
{
|
||||||
Enter = true;
|
Enter = true;
|
||||||
if (core.PlayerTurn == false)
|
if (core.PlayerTurn == false)
|
||||||
{
|
{
|
||||||
core.PlayerTurn = true;
|
core.PlayerTurn = true;
|
||||||
foreach (var unit in core.Squad)
|
foreach (var unit in core.Squad)
|
||||||
{
|
{
|
||||||
unit.step = 0;
|
unit.step = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
core.TestMonster.step = 0;
|
core.TestMonster.step = 0;
|
||||||
core.PlayerTurn = false;
|
core.PlayerTurn = false;
|
||||||
Point target = Point.Zero;
|
Point target = Point.Zero;
|
||||||
int distance = 7000;
|
int distance = 7000;
|
||||||
foreach (var unit in core.Squad)
|
foreach (var unit in core.Squad)
|
||||||
{
|
{
|
||||||
Vector2 soldier = new Vector2(unit.Transform.Grid.X, unit.Transform.Grid.Y);
|
Vector2 soldier = new Vector2(unit.Transform.Grid.X, unit.Transform.Grid.Y);
|
||||||
Vector2 monster = new Vector2(core.TestMonster.Transform.Grid.X, core.TestMonster.Transform.Grid.Y);
|
Vector2 monster = new Vector2(core.TestMonster.Transform.Grid.X, core.TestMonster.Transform.Grid.Y);
|
||||||
|
|
||||||
int newDistance = core.FindDistance(soldier, monster);
|
int newDistance = core.FindDistance(soldier, monster);
|
||||||
if (newDistance < distance)
|
if (newDistance < distance)
|
||||||
{
|
{
|
||||||
target = unit.Transform.Grid;
|
target = unit.Transform.Grid;
|
||||||
distance = newDistance;
|
distance = newDistance;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
core.TestMonster.GetComponent<Component.PathFinder>().Goal = target;
|
core.TestMonster.GetComponent<Component.PathFinder>().Goal = target;
|
||||||
distance = 7000;
|
distance = 7000;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ks.IsKeyDown(Keys.A))
|
if (ks.IsKeyDown(Keys.A))
|
||||||
{
|
{
|
||||||
/*foreach (var unit in core.Swarm)
|
/*foreach (var unit in core.Swarm)
|
||||||
{
|
{
|
||||||
unit.X = 200;
|
unit.X = 200;
|
||||||
unit.Y = 200;
|
unit.Y = 200;
|
||||||
}*/
|
}*/
|
||||||
core.TestMonster.X = 12;
|
core.TestMonster.X = 12;
|
||||||
core.TestMonster.Y = 4;
|
core.TestMonster.Y = 4;
|
||||||
}
|
}
|
||||||
}
|
if (ks.IsKeyDown(Keys.S))
|
||||||
}
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,70 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using DepthsBelow.Component;
|
||||||
|
using Microsoft.Xna.Framework;
|
||||||
|
using Microsoft.Xna.Framework.Graphics;
|
||||||
|
using Microsoft.Xna.Framework.Input;
|
||||||
|
|
||||||
|
namespace DepthsBelow
|
||||||
|
{
|
||||||
|
public class Shot : Entity
|
||||||
|
{
|
||||||
|
public static Texture2D Texture;
|
||||||
|
public Color Color;
|
||||||
|
public static Point Origin;
|
||||||
|
|
||||||
|
private bool _selected; //I guess as in "currently doing something"
|
||||||
|
|
||||||
|
public List<Shot> Volley;
|
||||||
|
|
||||||
|
private PathFinder.Node nextNode;
|
||||||
|
public Vector2 direction = Vector2.Zero;
|
||||||
|
|
||||||
|
public Shot(Core core)
|
||||||
|
: base(core)
|
||||||
|
{
|
||||||
|
if (Texture == null)
|
||||||
|
LoadContent(core);
|
||||||
|
|
||||||
|
Transform.World.Origin = new Vector2(16, 16);
|
||||||
|
|
||||||
|
this.Color = Color.White;
|
||||||
|
var rc = new SpriteRenderer(this) { Texture = Texture, Color = Color.White };
|
||||||
|
AddComponent(rc);
|
||||||
|
|
||||||
|
var cc = new Collision(this, 32, 32);
|
||||||
|
AddComponent(cc);
|
||||||
|
|
||||||
|
}
|
||||||
|
public static void LoadContent(Core core)
|
||||||
|
{
|
||||||
|
Texture = core.Content.Load<Texture2D>("images/Shot");
|
||||||
|
}
|
||||||
|
public override void Update(GameTime gameTime)
|
||||||
|
{
|
||||||
|
base.Update(gameTime);
|
||||||
|
|
||||||
|
float elapsed = gameTime.ElapsedGameTime.Milliseconds / 1000.0f;
|
||||||
|
List<Point> soldierCollisions = new List<Point>();
|
||||||
|
|
||||||
|
foreach (var body in core.Swarm)
|
||||||
|
{
|
||||||
|
if (this.GetComponent<Collision>().Rectangle.Intersects(body.GetComponent<Collision>().Rectangle))
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (var soldier in core.Squad)
|
||||||
|
{
|
||||||
|
if (this.GetComponent<Collision>().Rectangle.Intersects(soldier.GetComponent<Collision>().Rectangle))
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// HACK: Make this work properly with other speeds...
|
||||||
|
float speed = 4f;
|
||||||
|
Transform.World.Position += speed * direction;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,131 +1,138 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<ProjectGuid>{433A77A2-DE52-4875-A4EF-232CF59C2DD3}</ProjectGuid>
|
<ProjectGuid>{433A77A2-DE52-4875-A4EF-232CF59C2DD3}</ProjectGuid>
|
||||||
<ProjectTypeGuids>{96E2B04D-8817-42c6-938A-82C39BA4D311};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
<ProjectTypeGuids>{96E2B04D-8817-42c6-938A-82C39BA4D311};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||||
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
<XnaFrameworkVersion>v4.0</XnaFrameworkVersion>
|
||||||
<OutputPath>bin\$(Platform)\$(Configuration)</OutputPath>
|
<OutputPath>bin\$(Platform)\$(Configuration)</OutputPath>
|
||||||
<ContentRootDirectory>Content</ContentRootDirectory>
|
<ContentRootDirectory>Content</ContentRootDirectory>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<RootNamespace>DepthsBelowContent</RootNamespace>
|
<RootNamespace>DepthsBelowContent</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.EffectImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.EffectImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.FBXImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.FBXImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.TextureImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.TextureImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.XImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.XImporter, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.AudioImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.AudioImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.VideoImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
<Reference Include="Microsoft.Xna.Framework.Content.Pipeline.VideoImporters, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=MSIL">
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="images\soldier.png">
|
<Compile Include="images\soldier.png">
|
||||||
<Name>soldier</Name>
|
<Name>soldier</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="maps\test.tmx">
|
<Compile Include="maps\test.tmx">
|
||||||
<Name>test</Name>
|
<Name>test</Name>
|
||||||
<Importer>TmxImporter</Importer>
|
<Importer>TmxImporter</Importer>
|
||||||
<Processor>MapProcessor</Processor>
|
<Processor>MapProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\TiledLib\TiledLib\TiledLib.csproj">
|
<ProjectReference Include="..\..\TiledLib\TiledLib\TiledLib.csproj">
|
||||||
<Project>{EC3F6988-459C-4783-89E9-F34C0CC731C7}</Project>
|
<Project>{EC3F6988-459C-4783-89E9-F34C0CC731C7}</Project>
|
||||||
<Name>TiledLib</Name>
|
<Name>TiledLib</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
<ProjectReference Include="..\DepthsBelowContentPipeline\DepthsBelowContentPipeline.csproj">
|
<ProjectReference Include="..\DepthsBelowContentPipeline\DepthsBelowContentPipeline.csproj">
|
||||||
<Project>{D054E3A6-7E05-4255-984F-69FE40D9137F}</Project>
|
<Project>{D054E3A6-7E05-4255-984F-69FE40D9137F}</Project>
|
||||||
<Name>DepthsBelowContentPipeline</Name>
|
<Name>DepthsBelowContentPipeline</Name>
|
||||||
</ProjectReference>
|
</ProjectReference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="maps\tilesets\aztek.jpg">
|
<Compile Include="maps\tilesets\aztek.jpg">
|
||||||
<Name>aztek</Name>
|
<Name>aztek</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="images\soldier2.png">
|
<Compile Include="images\soldier2.png">
|
||||||
<Name>soldier2</Name>
|
<Name>soldier2</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="maps\tilesets\collision.png">
|
<Compile Include="maps\tilesets\collision.png">
|
||||||
<Name>collision</Name>
|
<Name>collision</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="maps\Cave.Level1.tmx">
|
<Compile Include="maps\Cave.Level1.tmx">
|
||||||
<Name>Cave.Level1</Name>
|
<Name>Cave.Level1</Name>
|
||||||
<Processor>MapProcessor</Processor>
|
<Processor>MapProcessor</Processor>
|
||||||
<Importer>TmxImporter</Importer>
|
<Importer>TmxImporter</Importer>
|
||||||
<SubType>Designer</SubType>
|
<SubType>Designer</SubType>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="maps\tilesets\cave.png">
|
<Compile Include="maps\tilesets\cave.png">
|
||||||
<Name>cave</Name>
|
<Name>cave</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="images\Monster.png">
|
<Compile Include="images\Monster.png">
|
||||||
<Name>Monster</Name>
|
<Name>Monster</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="images\Enter.bmp">
|
<Compile Include="images\Enter.bmp">
|
||||||
<Name>Enter</Name>
|
<Name>Enter</Name>
|
||||||
<Importer>TextureImporter</Importer>
|
<Importer>TextureImporter</Importer>
|
||||||
<Processor>TextureProcessor</Processor>
|
<Processor>TextureProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Arial.spritefont">
|
<Compile Include="Arial.spritefont">
|
||||||
<Name>Arial</Name>
|
<Name>Arial</Name>
|
||||||
<Importer>FontDescriptionImporter</Importer>
|
<Importer>FontDescriptionImporter</Importer>
|
||||||
<Processor>FontDescriptionProcessor</Processor>
|
<Processor>FontDescriptionProcessor</Processor>
|
||||||
</Compile>
|
</Compile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" />
|
<ItemGroup>
|
||||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
<Compile Include="images\Shot.bmp">
|
||||||
Other similar extension points exist, see Microsoft.Common.targets.
|
<Name>Shot</Name>
|
||||||
<Target Name="BeforeBuild">
|
<Importer>TextureImporter</Importer>
|
||||||
</Target>
|
<Processor>TextureProcessor</Processor>
|
||||||
<Target Name="AfterBuild">
|
</Compile>
|
||||||
</Target>
|
</ItemGroup>
|
||||||
-->
|
<Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" />
|
||||||
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||||
|
Other similar extension points exist, see Microsoft.Common.targets.
|
||||||
|
<Target Name="BeforeBuild">
|
||||||
|
</Target>
|
||||||
|
<Target Name="AfterBuild">
|
||||||
|
</Target>
|
||||||
|
-->
|
||||||
</Project>
|
</Project>
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 222 B |
Reference in New Issue
Block a user