static void Main(string[] args) { if (args.Length < 4) { Console.WriteLine("Usage: Teleport [loginfirstname] [loginlastname] [password] [sim/x/y/z]"); return; } char[] seps = { '/' }; string[] destination = args[3].Split(seps); if( destination.Length != 4 ) { Console.WriteLine("Destination should be specified as: sim/x/y/z"); return; } string sim = destination[0]; float x = float.Parse(destination[1]); float y = float.Parse(destination[2]); float z = float.Parse(destination[3]); Console.WriteLine("Will attempt a teleport to " + sim + " {" + x + "," + y + "," + z + "}..."); Console.WriteLine(); Teleport app = new Teleport(sim); bool success = app.Connect(args[0], args[1], args[2]); if (success) { // Get the current sim name while (app.Client.Network.CurrentSim.Region.Name == null) { System.Threading.Thread.Sleep(100); } Console.WriteLine("Starting in " + app.Client.Network.CurrentSim.Region.Name); if (sim.ToLower() == app.Client.Network.CurrentSim.Region.Name.ToLower()) { Console.WriteLine("TODO: Add the ability to teleport somewhere in the local region. " + "Exiting for now, please specify a region other than the current one"); } else { app.doStuff(sim, new LLVector3(x, y, z)); } app.Disconnect(); } }