Skip to content
Browse files

Old class stuff

  • Loading branch information
smz11006 committed Dec 14, 2015
1 parent 24817a2 commit 5e2992f8d1a73bbe68bc46ddb2537f272fedc155
Showing 887 changed files with 588 additions and 0 deletions.
@@ -0,0 +1,152 @@
using UnityEngine;
using System;
using System.Collections.Generic; //Allows us to use lists
using Random = UnityEngine.Random; // Tells Random to use Untiy Engine Random number generator
//++Add in Comments++
//namespace Completed

public class BoardManager : MonoBehaviour {
//Using serializable allows us to embed a class wit hsub properties in sinpsector
public class Count
public int minimum; //Minimum value for our count class
public int maximum; //Maximum value for our count class

//assignment constructor
public Count(int min, int max)
minimum = min;
maximum = max;

public int columns = 8; //Number of columns in our game baord
public int rows = 8; //Number of Rows in our game board
public Count wallCount = new Count(5, 9); //Lower and upper limit for our random number
public Count foodCount = new Count(1, 5); //Lowra nd uper limit for our random food count
public GameObject exit; //Prefab to spawn for exit
public GameObject[] floorTiles; //Array of floor prefabs
public GameObject[] wallTiles; //Array of wall prefabs
public GameObject[] foodTiles; //Array of food prefabs
public GameObject[] enemyTiles; //Array of enemy prefabs
public GameObject[] outerWallTiles; //Array of ourter tile prefabs

private Transform boardHolder; //A variable to store references to the transform of something
private List<Vector3> gridPositions = new List<Vector3>(); //A list of possible locations to place tiles

//Clears our list gridPositions and prepares it to generate a new board.
void InitialiseList()
//clear our list gridPositions

//Loot through x axis (columns)
for (int x=1; x< columns - 1; x++)
//within each column, loop through the y axis (rows)

for (int y = 1; y < rows -1; y++)
//At each index add a new vector3 to our lists with the x and y coordinates of that position
gridPositions.Add(new Vector3(x, y, 0f));

//Sets up the outer walls and flolors of the game
void BoardSetup()
//instanciates baords and sets iup boardholder to its transform
boardHolder = new GameObject("Board").transform;

//loop along the x axis, starting from - 1 (to fill corner) with floor and outerwall edge tiles
for(int x = -1; x<columns + 1; x++)
//Loop along y axis, starting fomr -1 to place floor or outerwall tiles
for(int y = -1; y < rows + 1; y++)
//choose a random tile from our array for the floor tile prefabs and prepare to instanciete
GameObject toInstanciate = floorTiles[Random.Range(0, floorTiles.Length)];
//check if we current position is at board edge, if so choose a random outerwall prefab
if (x == -1 ||x == columns|| y == -1 || y == rows)
toInstanciate = outerWallTiles[Random.Range(0, outerWallTiles.Length)];

//Instanciate Gameobject instance using prefabt chosen for toInstanciate
GameObject instance = Instantiate(toInstanciate, new Vector3(x, y, 0f), Quaternion.identity) as GameObject;

//Set the paretn of our newly isntanciated object isnatne to boardHolder

//Making random positions to spawn board pieces
//RanndomPosition returns a random position from our gridpositions
Vector3 RandomPosition()
//Declare an integer randomInxdex, set its value to a ranom umber btween 0 and the count of items
int randomIndex = Random.Range(0, gridPositions.Count);

//Declare a variable of type Vector3 called Randomp position, set its value to the etnry ant RandomIndex
Vector3 randomPosition = gridPositions[randomIndex];

//Remove the etnry at randomIndex from the list so that it can't be re-used

//return the randomly selected Vector3 position
return randomPosition;

//LaoyutObjectAtRandom acepts an array of game obejcts to choose from along with a minimu and maximum
void LayoutObjectAtRandom(GameObject[] tileArray, int minimum, int maximum)
//Choose a random number of objects to instanciate within the minimum and maximum limits
int objectCount = Random.Range(minimum, maximum + 1);
//Instanciate objects until the randomly chosen limit objectcount is reached
for(int i = 0; i< objectCount; i++)

//Choose a random number of objects to isnanciate wtihin the minimum and maximum limits
Vector3 randomPosition = RandomPosition();

//Choose a random tile from tile Array and assign it to tileChoice
GameObject tileChoice = tileArray[Random.Range(0, tileArray.Length)];

//Insanciate tileCHoice at the position returned by RandomPositon with no change in rotation
Instantiate(tileChoice, randomPosition, Quaternion.identity);

//SetupScene initializeds our level and calls the previous functions to lay out the game board
public void SetupScene(int level)
//creates the outer walls and floor

//resets our list of gridposionts

//Instanciate a random number of walll tiles based on min/max, at random positions
LayoutObjectAtRandom(wallTiles, wallCount.minimum, wallCount.maximum);

//Instanciate a random number of food tiles based on min/max, at random positions
LayoutObjectAtRandom(foodTiles, foodCount.minimum, foodCount.maximum);

//Determine number of enemies based on current level number, based on logarithim progression
int enemyCount = (int)Mathf.Log(level, 2f);

//Instanciate arndom number of enmies based on min/max, at random positions
LayoutObjectAtRandom(enemyTiles, enemyCount, enemyCount);
//Instanciate the xtilre til in the upper right hand corner of our game board
Instantiate(exit, new Vector3(columns - 1, rows - 1, 0f), Quaternion.identity);

@@ -0,0 +1,56 @@
using UnityEngine;
using System.Collections;

namespace Completed
using System.Collections.Generic; //Allows us to use Lists.

public class GameManager : MonoBehaviour

public static GameManager instance = null; //Static instance of GameManager which allows it to be accessed by any other script.
private BoardManager boardScript; //Store a reference to our BoardManager which will set up the level.
private int level = 3; //Current level number, expressed in game as "Day 1".

//Awake is always called before any Start functions
void Awake()
//Check if instance already exists
if (instance == null)

//if not, set instance to this
instance = this;

//If instance already exists and it's not this:
else if (instance != this)

//Then destroy this. This enforces our singleton pattern, meaning there can only ever be one instance of a GameManager.

//Sets this to not be destroyed when reloading scene

//Get a component reference to the attached BoardManager script
boardScript = GetComponent<BoardManager>();

//Call the InitGame function to initialize the first level

//Initializes the game for each level.
void InitGame()
//Call the SetupScene function of the BoardManager script, pass it current level number.


//Update is called every frame.
void Update()

@@ -0,0 +1,136 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "">
<html xmlns="">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Unity Web Player | Roguelike2d</title>
<script type='text/javascript' src=''></script>
<script type="text/javascript">
var unityObjectUrl = "";
if (document.location.protocol == 'https:')
unityObjectUrl = unityObjectUrl.replace("http://", "https://ssl-");
document.write('<script type="text\/javascript" src="' + unityObjectUrl + '"><\/script>');
<script type="text/javascript">
var config = {
width: 960,
height: 600,
params: { enableDebugging:"0" }

var u = new UnityObject2(config);

jQuery(function() {

var $missingScreen = jQuery("#unityPlayer").find(".missing");
var $brokenScreen = jQuery("#unityPlayer").find(".broken");

u.observeProgress(function (progress) {
switch(progress.pluginStatus) {
case "broken":
$brokenScreen.find("a").click(function (e) {
return false;
case "missing":
$missingScreen.find("a").click(function (e) {
return false;
case "installed":
case "first":
u.initPlugin(jQuery("#unityPlayer")[0], "Roguelike2d.unity3d");
<style type="text/css">
body {
font-family: Helvetica, Verdana, Arial, sans-serif;
background-color: white;
color: black;
text-align: center;
a:link, a:visited {
color: #000;
a:active, a:hover {
color: #666;
p.header {
font-size: small;
p.header span {
font-weight: bold;
p.footer {
font-size: x-small;
div.content {
margin: auto;
width: 960px;
div.missing {
margin: auto;
position: relative;
top: 50%;
width: 193px;
div.broken a,
div.missing a {
height: 63px;
position: relative;
top: -31px;
div.broken img,
div.missing img {
border-width: 0px;
div.broken {
display: none;
div#unityPlayer {
cursor: default;
height: 600px;
width: 960px;
<p class="header"><span>Unity Web Player | </span>Roguelike2d</p>
<div class="content">
<div id="unityPlayer">
<div class="missing">
<a href="" title="Unity Web Player. Install now!">
<img alt="Unity Web Player. Install now!" src="" width="193" height="63" />
<div class="broken">
<a href="" title="Unity Web Player. Install now! Restart your browser after install.">
<img alt="Unity Web Player. Install now! Restart your browser after install." src="" width="193" height="63" />
<p class="footer">&laquo; created with <a href="" title="Go to">Unity</a> &raquo;</p>
Binary file not shown.

0 comments on commit 5e2992f

Please sign in to comment.
You can’t perform that action at this time.