public Level10(int boxesMax, int boxNeed, Vector3 spawnPoint, List<Vector3> billboardList, Theme levelTheme, BaseModel levelModel, BaseModel levelModelTwo, BaseModel[] glassModels, Goal catcher, Dictionary<OperationalMachine, bool> machines, List<Tube> tubes, LevelCompletionData data, string name) : base(10, boxesMax, boxNeed, spawnPoint, billboardList, levelTheme, levelModel, glassModels, catcher, null, machines, tubes, data, name) { currentCameraPoint = RenderingDevice.Camera.Position; boxesMaxOne = boxesMax; boxesNeedOne = boxNeed; boxesMaxTwo = 20; boxesNeedTwo = 10; spawnTheFirst = spawnPoint; spawnTheSecond = new Vector3(197.153f, -4.134f, 1.5f); catcherTheFirst = normalCatcher; catcherTheSecond = new Goal(new Vector3(313.454f, -3.801f, 5.5f), true); baseTheSecond = levelModelTwo; Vector3 pos = new Vector3(198.273f, -4.468f, 6.037f); ADVertexFormat[] verts = new ADVertexFormat[4]; verts[0] = new ADVertexFormat(new Vector3(0, 13.686f / 2, -11.359f / 2) + pos, new Vector2(0, 0), Vector3.UnitX); verts[1] = new ADVertexFormat(new Vector3(0, -13.686f / 2, -11.359f / 2) + pos, new Vector2(0, 1), Vector3.UnitX); verts[2] = new ADVertexFormat(new Vector3(0, 13.686f / 2, 11.359f / 2) + pos, new Vector2(1, 1), Vector3.UnitX); verts[3] = new ADVertexFormat(new Vector3(0, -13.686f / 2, 11.359f / 2) + pos, new Vector2(1, 0), Vector3.UnitX); buff = new VertexBuffer(RenderingDevice.GraphicsDevice, ADVertexFormat.VertexDeclaration, 4, BufferUsage.WriteOnly); buff.SetData(verts); blackTex = new Texture2D(RenderingDevice.GraphicsDevice, 1, 1); blackTex.SetData(new Color[] { new Color(0, 0, 0, 255) }); }
public void Ready() { box = new Box(new Vector3(0, 0, 20)); Random r = new Random(); box.Ent.Orientation = Quaternion.CreateFromAxisAngle(Vector3.UnitY, MathHelper.ToRadians(r.Next(-25, 25))) * Quaternion.CreateFromAxisAngle(Vector3.UnitX, MathHelper.ToRadians(r.Next(-25, 25))) * Quaternion.CreateFromAxisAngle(Vector3.UnitZ, MathHelper.ToRadians(r.Next(-25, 25))); RenderingDevice.Camera.SetForResultsScreen(); GameManager.Space.Add(entity); GameManager.State = GameState.Results; RenderingDevice.Add(box); ADVertexFormat[] verts = new ADVertexFormat[4]; float halfWidth = 80; verts[1] = new ADVertexFormat(new Vector3(-halfWidth, -halfWidth, 0), new Vector2(0, 0), new Vector3(0, 0, 1)); verts[0] = new ADVertexFormat(new Vector3(-halfWidth, halfWidth, 0), new Vector2(0, 1), new Vector3(0, 0, 1)); verts[2] = new ADVertexFormat(new Vector3(halfWidth, halfWidth, 0), new Vector2(1, 0), new Vector3(0, 0, 1)); verts[3] = new ADVertexFormat(new Vector3(halfWidth, -halfWidth, 0), new Vector2(1, 1), new Vector3(0, 0, 1)); buff = new VertexBuffer(RenderingDevice.GraphicsDevice, ADVertexFormat.VertexDeclaration, 4, BufferUsage.WriteOnly); buff.SetData(verts); RenderingDevice.Add(buff, Resources.MetalTex); RenderingDevice.SetUpLighting(RenderingDevice.LightingData.Results); timer.Start(); }
private void onGDMCreation() { ADVertexFormat[] verts = new ADVertexFormat[4]; if(sideways) { verts[0] = new ADVertexFormat(Vector3.Transform(new Vector3(-size, size, 1.5f), Quaternion.CreateFromAxisAngle(Vector3.UnitY, -MathHelper.PiOver2)) + pos, new Vector2(0, 0), new Vector3(0, 0, 1)); verts[1] = new ADVertexFormat(Vector3.Transform(new Vector3(-size, -size, 1.5f), Quaternion.CreateFromAxisAngle(Vector3.UnitY, -MathHelper.PiOver2)) + pos, new Vector2(0, 1), new Vector3(0, 0, 1)); verts[2] = new ADVertexFormat(Vector3.Transform(new Vector3(size, size, 1.5f), Quaternion.CreateFromAxisAngle(Vector3.UnitY, -MathHelper.PiOver2)) + pos, new Vector2(1, 1), new Vector3(0, 0, 1)); verts[3] = new ADVertexFormat(Vector3.Transform(new Vector3(size, -size, 1.5f), Quaternion.CreateFromAxisAngle(Vector3.UnitY, -MathHelper.PiOver2)) + pos, new Vector2(1, 0), new Vector3(0, 0, 1)); } else { verts[0] = new ADVertexFormat(new Vector3(-size, size, 1.5f) + pos, new Vector2(0, 0), new Vector3(0, 0, 1)); verts[1] = new ADVertexFormat(new Vector3(-size, -size, 1.5f) + pos, new Vector2(0, 1), new Vector3(0, 0, 1)); verts[2] = new ADVertexFormat(new Vector3(size, size, 1.5f) + pos, new Vector2(1, 1), new Vector3(0, 0, 1)); verts[3] = new ADVertexFormat(new Vector3(size, -size, 1.5f) + pos, new Vector2(1, 0), new Vector3(0, 0, 1)); } buff = new VertexBuffer(RenderingDevice.GraphicsDevice, ADVertexFormat.VertexDeclaration, 4, BufferUsage.WriteOnly); buff.SetData(verts); blackTex = new Texture2D(RenderingDevice.GraphicsDevice, 1, 1); blackTex.SetData(new Color[] { new Color(0, 0, 0, 255) }); }