internal void Remove(int x, int y) { List <Point> result = null; result = wireSolver.RemoveWire(x, y); foreach (Point t in result) { try { yaaaay[t].updateWireState(wireSolver.getWireTransfer(t)); } catch { } } StringBuilder sb = new StringBuilder(); foreach (Point t in result) { sb.AppendLine(t.ToString()); } }
internal void TriggerOnWire(Point location) { WireTransfer transferItem = wireSlower.getWireTransfer(location); List <Point> pointsToTrigger; WireCurrentTransfer transferType = WireCurrentTransfer.DOWN | WireCurrentTransfer.LEFT | WireCurrentTransfer.RIGHT | WireCurrentTransfer.UP; if (transferItem.isPowered() && transferItem.getTransfer() == transferType) { pointsToTrigger = wireSlower.RemoveWire(location.X, location.Y); //form.Remove(location.X, location.Y); } else { pointsToTrigger = wireSlower.AddOrUpdateWire(location.X, location.Y, CurrentType.SENDER, WireCurrentTransfer.NONE); //form.AddOrUpdateWire(location.X, location.Y, CurrentType.SENDER, WireCurrentTransfer.NONE); } HandleItems(pointsToTrigger, location); }