public static void LoadWorld(string path) { string[] lines = File.ReadAllLines(path); foreach (string line in lines) { string[] parts = line.Split(" ".ToCharArray()); try { EngineOBJManager.OBJ temp = new EngineOBJManager.OBJ { drawType = 1, collider = new Rectangle(int.Parse(parts[1]), int.Parse(parts[2]), int.Parse(parts[3]), int.Parse(parts[4])), garphics = new Rectangle(int.Parse(parts[1]), int.Parse(parts[2]), int.Parse(parts[3]), int.Parse(parts[4])), angle = int.Parse(parts[5]), tags = new List <string> { parts[6] } }; EngineOBJManager.objects.Add(temp); EnginePhysics.colliders.Add(temp); if (parts[6] == "enemy") { enemys.Add(temp); } } catch { Console.WriteLine("Error while reading from file " + path + " ."); } } }
private static void CheckCollisions() { int left = EnginePhysics.RectangleCollision(collLeft); int right = EnginePhysics.RectangleCollision(collRight); int bottom = EnginePhysics.RectangleCollision(collBottom); int top = EnginePhysics.RectangleCollision(collTop); if (left != -1) { EngineOBJManager.OBJ temp = EnginePhysics.colliders[left]; if (temp.tags != null) { if (temp.tags.Contains("point")) { points++; Console.WriteLine("NEW POINT XD"); EngineOBJManager.objects.Remove(temp); EnginePhysics.colliders.Remove(temp); } else if (temp.tags.Contains("enemy")) { Console.WriteLine("DEAD"); } } } if (right != -1) { EngineOBJManager.OBJ temp = EnginePhysics.colliders[right]; if (temp.tags != null) { if (temp.tags.Contains("point")) { points++; Console.WriteLine("NEW POINT XD"); EngineOBJManager.objects.Remove(temp); EnginePhysics.colliders.Remove(temp); } else if (temp.tags.Contains("enemy")) { Console.WriteLine("DEAD"); } } } if (top != -1) { EngineOBJManager.OBJ temp = EnginePhysics.colliders[top]; if (temp.tags != null) { if (temp.tags.Contains("point")) { points++; Console.WriteLine("NEW POINT XD"); EngineOBJManager.objects.Remove(temp); EnginePhysics.colliders.Remove(temp); } else if (temp.tags.Contains("enemy")) { Console.WriteLine("DEAD"); } } } if (bottom != -1) { EngineOBJManager.OBJ temp = EnginePhysics.colliders[bottom]; if (temp.tags != null) { if (temp.tags.Contains("point")) { points++; Console.WriteLine("NEW POINT XD"); EngineOBJManager.objects.Remove(temp); EnginePhysics.colliders.Remove(temp); } else if (temp.tags.Contains("enemy")) { EngineOBJManager.objects.Remove(temp); EnginePhysics.colliders.Remove(temp); } } } }