예제 #1
0
    // Use this for initialization
    public void init(BoardManager bm)
    {
        board = bm;
        if (board == null)
        {
            print("Error. board is null.");
        }
        marbleObj = GameObject.CreatePrimitive(PrimitiveType.Quad);
        model     = marbleObj.AddComponent <MarbleModel>();
        model.init(this);

        // Init the public values
        currX         = Random.Range(0, BoardManager.boardWidth);
        currY         = Random.Range(0, BoardManager.boardHeight);
        health        = 100;
        direction     = Random.Range(0, 4);
        relativeSpeed = 1.0f;

        transform.eulerAngles = new Vector3(0, 0, (direction + 3) * 90);
        int enteringFrom = Tile.getOppositeDirection(direction);

        transform.position = board.getTile(currX, currY).getEntryPoint(enteringFrom);
        transform.position = new Vector3(transform.position.x, transform.position.y, BoardManager.TrainZ);
//		clock = 0f;
        initialized = true;
    }
예제 #2
0
        public MarbleModel Get(int id)
        {
            var Marble = new MarbleModel();
            List <MarbleModel> marbles = Marble.MarbleBagGetter();

            return(marbles[id - 1]);
        }
예제 #3
0
        public IEnumerable <MarbleModel> Get()
        {
            var Marble = new MarbleModel();
            IEnumerable <MarbleModel> marbles = Marble.MarbleBagGetter();

            return(marbles);
        }
예제 #4
0
	public void init(int direction, Tile tile, GameManager gm) {
		this.x = tile.x;
		this.y = tile.y;
		this.gm = gm;

		health = 5;
		score = 0;

		currTile = tile;
		currTile.marbles.Add (this);

		var modelObject = GameObject.CreatePrimitive(PrimitiveType.Quad);	
		modelObject.layer = 8;
		modelObject.tag = "marble";
		MeshCollider mc = modelObject.GetComponent<MeshCollider> ();
		mc.enabled = false;

		SphereCollider sc = modelObject.AddComponent<SphereCollider> ();
		sc.radius = 0.3445716f;
		sc.isTrigger = true;
		Rigidbody rb = modelObject.AddComponent<Rigidbody> ();
		rb.useGravity = false;
		rb.isKinematic = false;
		rb.collisionDetectionMode = CollisionDetectionMode.Continuous;

		model = modelObject.AddComponent<MarbleModel>();	
		model.init(x, y, this, modelObject);	

		getDirection (direction);
		getNextSquare ();
	}
예제 #5
0
        public MarbleModel GetRandom()
        {
            var Marble = new MarbleModel();
            List <MarbleModel> marbles = Marble.MarbleBagGetter();

            Random rnd = new Random();

            Marble = marbles[rnd.Next(0, marbles.Count())];
            return(Marble);
        }
예제 #6
0
        public IActionResult Add([FromForm] string color)
        {
            var newMarble = new MarbleModel {
                Color = color
            };

            marbleBag.Add(newMarble);
            foreach (var item in marbleBag)
            {
                Console.WriteLine(item);
            }
            return(RedirectToAction("Index"));
        }
예제 #7
0
        public IActionResult Add([FromForm] string marblecol)
        {
            var Marble = new MarbleModel();
            List <MarbleModel> marbles = Marble.MarbleBagGetter();
            var newMarble = new MarbleModel {
                ID          = marbles.Count() + 1,
                MarbleColor = marblecol
            };

            marbles.Add(newMarble);
            foreach (var item in marbles)
            {
                Console.WriteLine(item);
            }
            return(RedirectToAction("Get"));
        }
예제 #8
0
    public void init(int dir, Tile start, MarbleManager manager, int health)
    {
        GameObject modelObject;

        this.manager = manager;
        curTile      = start;
        this.health  = health;
        modelObject  = GameObject.CreatePrimitive(PrimitiveType.Quad);
        model        = modelObject.AddComponent <MarbleModel>();
        model.init(this);
        direction = dir;
        rotateMarble(dir * -90);
        targetTile = start;
        speed      = 1;
        offBoard   = false;
        turboTime  = 0;
    }
예제 #9
0
	// Use this for initialization
	public void init(BoardManager bm) {
        board = bm;
		if (board == null) {
			print("Error. board is null.");
		}
		marbleObj = GameObject.CreatePrimitive(PrimitiveType.Quad);
		model = marbleObj.AddComponent<MarbleModel>();
		model.init(this);

		// Init the public values
		currX = Random.Range(0, BoardManager.boardWidth);
		currY = Random.Range(0, BoardManager.boardHeight);
		health = 100;
		direction = Random.Range(0, 4);
		relativeSpeed = 1.0f;

		transform.eulerAngles = new Vector3(0, 0, (direction + 3) * 90);
		int enteringFrom = Tile.getOppositeDirection(direction);
		transform.position = board.getTile(currX, currY).getEntryPoint(enteringFrom);
		transform.position = new Vector3(transform.position.x, transform.position.y, BoardManager.TrainZ);
//		clock = 0f;
        initialized = true;
	}
예제 #10
0
        public MarbleModel CreateMarble()
        {
            MarbleModel newMarble = new MarbleModel();

            return(newMarble);
        }