Ejemplo n.º 1
0
	//Function called when painting with logic tile
	public void Eval(TileLogicScript logic, LogicEvalInfo info, bool u, bool d, bool l, bool r, bool ul, bool ur, bool dl, bool dr) {
		info.Adjust(tname, x + 1, y + 1);

		if (!u) {
			if (!l) info.Adjust(tname, x, y);
			else if (!r) info.Adjust(tname, x + 2, y);
			else info.Adjust(tname, x + 1, y + (dl ? 0 : ul ? 2 : 0));
		} else if (!d) {
			if (!l) info.Adjust(tname, x, y + 2);
			else if (!r) info.Adjust(tname, x + 2, y + 2);
			else info.Adjust(tname, x + 1, y + 2);
		} else if (u) {
			if (!l) info.Adjust(tname, x, y + 1);
			else if (!r) info.Adjust(tname, x + 2, y + 1);
		}	

		if (u && d && l && r) {
			if (!ul) info.Adjust(tname, x + 3, y);
			else if (!ur) info.Adjust(tname, x + 4, y);
			else if (!dl) info.Adjust(tname, x + 3, y + 1);
			else if (!dr) info.Adjust(tname, x + 4, y + 1);
		}

		if (u && d && l && r && ul && ur && dl && dr) {
			info.Adjust(tname, x + 1, y + 1); //middle!
		}

	}
Ejemplo n.º 2
0
	public void Eval(TileLogicScript logic, LogicEvalInfo info, bool u, bool d, bool l, bool r, bool ul, bool ur, bool dl, bool dr) {
		info.Adjust(tname, x, y);
	}