Removing old files
This commit is contained in:
parent
740730958b
commit
28f5031ba8
@ -1,46 +0,0 @@
|
||||
using System;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
|
||||
class Crops
|
||||
{
|
||||
public int Status;
|
||||
private int Timer;
|
||||
private Random r;
|
||||
public int x;
|
||||
public int y;
|
||||
|
||||
public void updateCrop()
|
||||
{
|
||||
if (Status != 0)
|
||||
{
|
||||
Timer--;
|
||||
}
|
||||
}
|
||||
|
||||
public int getCropTimer()
|
||||
{
|
||||
return Timer;
|
||||
}
|
||||
|
||||
public int getStatus()
|
||||
{
|
||||
return Status;
|
||||
}
|
||||
|
||||
public void setStatus(int newStatus)
|
||||
{
|
||||
Status = newStatus;
|
||||
}
|
||||
|
||||
public void setPosition(int newx, int newy)
|
||||
{
|
||||
x = newx;
|
||||
y = newy;
|
||||
}
|
||||
}
|
@ -1,91 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
|
||||
class Farm
|
||||
{
|
||||
private Crops[,] crops;
|
||||
private Random r;
|
||||
|
||||
public void init(Vector2 Size)
|
||||
{
|
||||
r = new Random();
|
||||
crops = new Crops[100, (GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height / 56) - 125 / 56];
|
||||
for (int i = 0; i < Size.X; i++)
|
||||
{
|
||||
for (int j = 0; j < Size.Y; j++)
|
||||
{
|
||||
int x = r.Next(0, 2);
|
||||
crops[i, j] = new Crops();
|
||||
crops[i, j].Status = x;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void updateFarm(Vector2 Size)
|
||||
{
|
||||
for (int i = 0; i > Size.X; i++)
|
||||
{
|
||||
for (int j = 0; j > Size.Y; j++)
|
||||
{
|
||||
crops[i, j].updateCrop();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public void setCropStatus(float xfloat, float yfloat, int Spacing)
|
||||
{
|
||||
int x = (int)xfloat / Spacing;
|
||||
int y = (int)yfloat / Spacing;
|
||||
if (crops[x, y].Status == 3)
|
||||
{
|
||||
crops[x, y].Status = 1;
|
||||
}
|
||||
else if(crops[x, y].Status == 0)
|
||||
{
|
||||
//do nothing
|
||||
}
|
||||
else if (crops[x, y].Status == 1)
|
||||
{
|
||||
crops[x, y].Status = 2;
|
||||
}
|
||||
else if (crops[x, y].Status == 2)
|
||||
{
|
||||
crops[x, y].Status = 3;
|
||||
}
|
||||
}
|
||||
|
||||
public Crops getCrop(int x, int y)
|
||||
{
|
||||
return crops[x,y];
|
||||
}
|
||||
|
||||
public Crops[,] getCrops()
|
||||
{
|
||||
return crops;
|
||||
}
|
||||
|
||||
public void updateSize(Vector2 Size, int tileSize, int Spacing)
|
||||
{
|
||||
|
||||
for (int i = 0; i < (int)Size.X; i++)
|
||||
{
|
||||
for (int j = 0; j < (int)Size.Y; j++)
|
||||
{
|
||||
crops[i, j].x = (tileSize + Spacing) * i;
|
||||
crops[i, j].y = (tileSize + Spacing) * j;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public string getSize()
|
||||
{
|
||||
return crops[1, 1].x.ToString();
|
||||
}
|
||||
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.Xna.Framework;
|
||||
|
||||
class House
|
||||
{
|
||||
|
||||
private Rectangle housePos;
|
||||
private Vector2 pos;
|
||||
private Random r = new Random();
|
||||
|
||||
public void init(int tileSize, int Spacing)
|
||||
{
|
||||
int x = r.Next(0, 8);
|
||||
int y = r.Next(0, 8);
|
||||
|
||||
pos = new Vector2(x, y);
|
||||
housePos = new Rectangle((x * tileSize + Spacing), y * (tileSize + Spacing), tileSize, tileSize);
|
||||
}
|
||||
|
||||
public void updateRectangle(Vector2 Size, int tileSize)
|
||||
{
|
||||
if (pos.X + 1 > Size.X)
|
||||
{
|
||||
pos = new Vector2(pos.X - 1, pos.Y);
|
||||
}
|
||||
if (pos.Y + 1 > Size.Y)
|
||||
{
|
||||
pos = new Vector2(pos.X, pos.Y - 1);
|
||||
}
|
||||
housePos = new Rectangle((int)pos.X * (tileSize + 1), (int)pos.Y * (tileSize + 1), tileSize, tileSize);
|
||||
}
|
||||
|
||||
|
||||
public Rectangle GetRectangle()
|
||||
{
|
||||
return housePos;
|
||||
}
|
||||
|
||||
public Vector2 getVector()
|
||||
{
|
||||
return new Vector2(housePos.X, housePos.Y);
|
||||
}
|
||||
}
|
@ -1,100 +0,0 @@
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
|
||||
|
||||
|
||||
class Input
|
||||
{
|
||||
private KeyboardState state = Keyboard.GetState();
|
||||
private GraphicsDeviceManager graphics;
|
||||
private Vector2 Size;
|
||||
private int tileSize;
|
||||
private int Spacing;
|
||||
|
||||
public void init(GraphicsDeviceManager Graphics, Vector2 size, int TileSize, int SPacing)
|
||||
{
|
||||
graphics = Graphics;
|
||||
tileSize = TileSize;
|
||||
Spacing = SPacing;
|
||||
Size = size;
|
||||
}
|
||||
|
||||
public int changeSpeed(int speed)
|
||||
{
|
||||
KeyboardState state = Keyboard.GetState();
|
||||
if (state.IsKeyDown(Keys.Right))
|
||||
{
|
||||
speed++;
|
||||
}
|
||||
|
||||
if (state.IsKeyDown(Keys.Left) && speed > 0)
|
||||
{
|
||||
speed--;
|
||||
}
|
||||
return speed;
|
||||
}
|
||||
|
||||
private Vector2 changeSize()
|
||||
{
|
||||
KeyboardState state = Keyboard.GetState();
|
||||
if (state.IsKeyDown(Keys.D) && Size.X < 100)
|
||||
{
|
||||
Size.X++;
|
||||
graphics.PreferredBackBufferWidth = (tileSize + Spacing) * (int)Size.X - Spacing;
|
||||
}
|
||||
|
||||
if (state.IsKeyDown(Keys.A) && Size.X > 2)
|
||||
{
|
||||
Size.X--;
|
||||
graphics.PreferredBackBufferWidth = (tileSize + Spacing) * (int)Size.X - Spacing;
|
||||
}
|
||||
|
||||
if (state.IsKeyDown(Keys.W) && Size.Y < (GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height / tileSize) - 125 / tileSize)
|
||||
{
|
||||
Size.Y++;
|
||||
graphics.PreferredBackBufferHeight = (tileSize + Spacing) * (int)Size.Y - Spacing + 100;
|
||||
}
|
||||
|
||||
if (state.IsKeyDown(Keys.S) && Size.Y > 2)
|
||||
{
|
||||
Size.Y--;
|
||||
graphics.PreferredBackBufferHeight = (tileSize + Spacing) * (int)Size.Y - Spacing + 100;
|
||||
}
|
||||
return Size;
|
||||
}
|
||||
|
||||
public void controlWindowSize()
|
||||
{
|
||||
if (Size.X * tileSize + 5 > GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width)
|
||||
{
|
||||
tileSize--;
|
||||
}
|
||||
if (Size.X * tileSize - 5 < GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Width && tileSize < 56)
|
||||
{
|
||||
tileSize++;
|
||||
}
|
||||
changeSize();
|
||||
graphics.ApplyChanges();
|
||||
}
|
||||
|
||||
public int getTileSize()
|
||||
{
|
||||
return tileSize;
|
||||
}
|
||||
|
||||
public int getSpacing()
|
||||
{
|
||||
return Spacing;
|
||||
}
|
||||
|
||||
public Vector2 getSize()
|
||||
{
|
||||
return Size;
|
||||
}
|
||||
|
||||
public void setTileSize(int newTileSize)
|
||||
{
|
||||
tileSize = newTileSize;
|
||||
}
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Game1.Sources
|
||||
{
|
||||
class Queue
|
||||
{
|
||||
private Task[] task;
|
||||
|
||||
public void Sort()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -1,23 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
|
||||
namespace Game1.Sources
|
||||
{
|
||||
class Task
|
||||
{
|
||||
private Vector2 Position;
|
||||
private int Objective;
|
||||
private float timer;
|
||||
|
||||
public void setTimer(float newTimer)
|
||||
{
|
||||
timer = newTimer;
|
||||
}
|
||||
public void updateTimer()
|
||||
{
|
||||
timer = timer - 1 / 60;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,220 +0,0 @@
|
||||
using Microsoft.Xna.Framework;
|
||||
using Microsoft.Xna.Framework.Graphics;
|
||||
using Microsoft.Xna.Framework.Input;
|
||||
using System;
|
||||
|
||||
|
||||
class Tractor
|
||||
{
|
||||
static private Vector2 Position;
|
||||
private Vector2 TargetPosition;
|
||||
private Vector2 Direction;
|
||||
private int Spacing, sizeTile;
|
||||
private int Speed = 1;
|
||||
private Vector2 Size;
|
||||
private Random r = new Random();
|
||||
private Farm farm = new Farm();
|
||||
private Vector2 housePos;
|
||||
private String currentTask;
|
||||
private SmartTractor smartTractor = new SmartTractor();
|
||||
private int Score;
|
||||
private int previousTask;
|
||||
|
||||
public void updateSizing(Input input, int Status, Vector2 newHousePos)
|
||||
{
|
||||
Spacing = input.getSpacing();
|
||||
sizeTile = input.getTileSize();
|
||||
Size = input.getSize();
|
||||
updatePosition(input.getSize(), Status);
|
||||
housePos = newHousePos;
|
||||
}
|
||||
|
||||
|
||||
public void init(Rectangle house)
|
||||
{
|
||||
sizeTile = 56;
|
||||
Spacing = 1;
|
||||
farm.init(new Vector2(100, (GraphicsAdapter.DefaultAdapter.CurrentDisplayMode.Height / sizeTile) - 125 / sizeTile));
|
||||
Position = housePos;
|
||||
}
|
||||
|
||||
private int updateDirection(Vector2 Size, Vector2 newPosition) /// Runs when the tractor reaches a tile
|
||||
{
|
||||
Vector2 DeltaPosition = TargetPosition - Position;
|
||||
if (DeltaPosition.X == 0)
|
||||
{
|
||||
if (DeltaPosition.Y == 0)
|
||||
{
|
||||
|
||||
|
||||
|
||||
if (housePos != Position)
|
||||
{
|
||||
int x = (int)Position.X / (sizeTile + Spacing);
|
||||
int y = (int)Position.Y / (sizeTile + Spacing);
|
||||
currentTask = currentTaskDecider(farm.getCrop(x, y).Status, 0);
|
||||
farm.setCropStatus(x, y, Spacing);
|
||||
setTargetPosition(housePos); //Returns to the farm
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
setTargetPosition(smartTractor.returnChoice()); //Sets a random Target
|
||||
int xTarget = (int)TargetPosition.X / (sizeTile + Spacing);
|
||||
int yTarget = (int)TargetPosition.Y / (sizeTile + Spacing);
|
||||
currentTask = currentTaskDecider(farm.getCrop(xTarget, yTarget).Status, 1);
|
||||
|
||||
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
else if (DeltaPosition.Y > 0)
|
||||
{
|
||||
Direction = new Vector2(0, 1);
|
||||
return 0;
|
||||
}
|
||||
else if (DeltaPosition.Y < 0)
|
||||
{
|
||||
Direction = new Vector2(0, -1);
|
||||
return 0;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
else if (DeltaPosition.X > 0)
|
||||
{
|
||||
Direction = new Vector2(1, 0);
|
||||
return 0;
|
||||
}
|
||||
else if (DeltaPosition.X < 0)
|
||||
{
|
||||
Direction = new Vector2(-1, 0);
|
||||
return 0;
|
||||
}
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
public void updatePosition(Vector2 Size, int Status) /// updates the position
|
||||
{
|
||||
|
||||
farm.updateSize(Size, sizeTile, Spacing);
|
||||
for (int i = 0; i < Speed; i++) //Where all the choices the tractor does comes from
|
||||
{
|
||||
smartTractor.updateMap(Position, housePos, farm.getCrops(), Size, sizeTile, Spacing, Score);
|
||||
Position = Position + Direction;
|
||||
updateDirection(Size, Position);
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public Vector2 getPos()
|
||||
{
|
||||
return Position;
|
||||
}
|
||||
|
||||
public void increaseSpeed()
|
||||
{
|
||||
Speed++;
|
||||
}
|
||||
|
||||
public void decreaseSpeed()
|
||||
{
|
||||
if (Speed > 0)
|
||||
{
|
||||
Speed--;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void setTargetPosition(Vector2 newPosition) /// sets the TargetPosition once it reaches its destination
|
||||
{
|
||||
TargetPosition = newPosition;
|
||||
}
|
||||
public void setSpeed(int newSpeed)
|
||||
{
|
||||
Speed = newSpeed;
|
||||
}
|
||||
|
||||
public int getSpeed()
|
||||
{
|
||||
return Speed;
|
||||
}
|
||||
|
||||
public void setPos(Vector2 newPos)
|
||||
{
|
||||
Position = newPos;
|
||||
}
|
||||
|
||||
public Farm getFarm()
|
||||
{
|
||||
return farm;
|
||||
}
|
||||
|
||||
public Vector2 getTargetPosition()
|
||||
{
|
||||
return TargetPosition;
|
||||
}
|
||||
|
||||
public String getCurrentTask()
|
||||
{
|
||||
return currentTask;
|
||||
}
|
||||
|
||||
public int getScore()
|
||||
{
|
||||
return Score;
|
||||
}
|
||||
|
||||
private String currentTaskDecider(int Status, int Stage)
|
||||
{
|
||||
previousTask = Status;
|
||||
if (previousTask == 3 && Stage != 1)
|
||||
{
|
||||
Score++;
|
||||
}
|
||||
if (Stage == 0)
|
||||
{
|
||||
if (Status == 0)
|
||||
{
|
||||
return "Returning with nothing after going out for a stroll";
|
||||
}
|
||||
else if (Status == 1)
|
||||
{
|
||||
return "Returning with nothing after planting seeds";
|
||||
}
|
||||
else if (Status == 2)
|
||||
{
|
||||
return "Returning with nothing after adding fertilizer";
|
||||
}
|
||||
else if (Status == 3)
|
||||
{
|
||||
return "Returning with Crops";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (Status == 0)
|
||||
{
|
||||
return "Going for a stroll";
|
||||
}
|
||||
else if (Status == 1)
|
||||
{
|
||||
return "Planting seeds";
|
||||
}
|
||||
else if (Status == 2)
|
||||
{
|
||||
return "Adding fertilizer";
|
||||
}
|
||||
else if (Status == 3)
|
||||
{
|
||||
return "Going for Crops";
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
@ -1,46 +0,0 @@
|
||||
using System;
|
||||
using Microsoft.Xna.Framework;
|
||||
using System;
|
||||
|
||||
class SmartTractor
|
||||
{
|
||||
private Crops[,] crops;
|
||||
private Vector2 housePos;
|
||||
private Vector2 tractorPos;
|
||||
private Vector2 Size;
|
||||
private int tileSize;
|
||||
private int Score;
|
||||
private int Spacing;
|
||||
private Random r = new Random();
|
||||
|
||||
|
||||
|
||||
public Vector2 returnChoice()
|
||||
{
|
||||
return new Vector2(r.Next(0, (int)Size.X), r.Next(0, (int)Size.Y)) * (tileSize + Spacing);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public void updateMap(Vector2 newTractorPos, Vector2 newHousePos, Crops[,] newCropsStatus, Vector2 newSize, int newTileSize, int newSpacing, int newScore)
|
||||
{
|
||||
crops = newCropsStatus;
|
||||
housePos = newHousePos;
|
||||
tractorPos = newTractorPos;
|
||||
Size = newSize;
|
||||
tileSize = newTileSize;
|
||||
Spacing = newSpacing;
|
||||
Score = newScore;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user