Posted: Tue Aug 01, 2006 5:49 am Post subject: .name on Realms()
How about adding .name to the struct returned by Realms()?
How else would you get the realm name if you have to loop through all the realms, looking for something? (Well besides from a escript function, with a case on mapid, but that is not a nice solution)
Author
Message
Austin POL Developer
Joined: 30 Jan 2006 Posts: 355 Location: San Diego, California
Posted: Tue Aug 01, 2006 7:39 am Post subject:
Just .. give this a try (trust me)
Code:
use uo;
use polsys;
Program ShowMeTheRealms()
foreach realm in ( Realms() )
Print("I am on realm ->"+_realm_iter);
SleepMS(2);
endforeach
return 1;
endprogram
Remember that Realms() returns a dictionary.
The key is the realm name. You could also use ( Realms.Keys() ) to only get the realm names. If you iterate Realms() directly though, the pointer becomes the key name. In an array it would be an integer. _(var)_iter is a bonus variable in foreach loops (since 095)
I have been running a shard since pol92 singlehanded, worked with Dict, struct in EScript. I have worked with iterators in C++, yet I would have never found out that myself, and I dont remember seeing any documentation or core changes for that.
Maybe add a few words about this in the documentations for Dictionary, in http://poldoc.fem.tu-ilmenau.de/pol096/objref.php#Dictionary.
Thanks for your help
Author
Message
Austin POL Developer
Joined: 30 Jan 2006 Posts: 355 Location: San Diego, California
Posted: Wed Aug 02, 2006 6:42 am Post subject:
Yeah its very obscure. I found out about it in core-changes.txt when 095 was released. Prior to that it was called _(var)_counter and was never documented.
It has recently been put into Racalac's script guide for 096 on POL-Doc.