Done more work on the world map downloading functionality
parent
8e18a3ae75
commit
5f393102b1
|
@ -1,5 +1,8 @@
|
|||
using Nwc.XmlRpc;
|
||||
using System;
|
||||
using System.Net;
|
||||
using System.IO;
|
||||
using System.Xml;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using libsecondlife;
|
||||
|
@ -12,6 +15,8 @@ namespace OpenGridServices.Manager
|
|||
public LLUUID SessionID;
|
||||
public bool connected=false;
|
||||
|
||||
public RegionBlock[][] WorldMap;
|
||||
|
||||
public bool Connect(string GridServerURL, string username, string password)
|
||||
{
|
||||
try {
|
||||
|
@ -39,6 +44,29 @@ namespace OpenGridServices.Manager
|
|||
}
|
||||
}
|
||||
|
||||
public void DownloadMap()
|
||||
{
|
||||
System.Net.WebClient mapdownloader = new WebClient();
|
||||
Stream regionliststream = mapdownloader.OpenRead(ServerURL + "/regionlist");
|
||||
|
||||
|
||||
XmlDocument doc = new XmlDocument();
|
||||
doc.Load(regionliststream);
|
||||
XmlNode rootnode = doc.FirstChild;
|
||||
if (rootnode.Name != "regions")
|
||||
{
|
||||
// TODO - ERROR!
|
||||
}
|
||||
|
||||
for(int i=0; i<=rootnode.ChildNodes.Count; i++)
|
||||
{
|
||||
if(rootnode.ChildNodes.Item(i).Name != "region") {
|
||||
// TODO - ERROR!
|
||||
} else {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public bool RestartServer()
|
||||
{
|
||||
return true;
|
||||
|
|
|
@ -43,7 +43,8 @@ namespace OpenGridServices.Manager
|
|||
win.SetStatus("Connected OK with session ID:" + gridserverConn.SessionID);
|
||||
win.SetGridServerConnected(true);
|
||||
Thread.Sleep(3000);
|
||||
win.SetStatus("");
|
||||
win.SetStatus("Downloading region maps...");
|
||||
gridserverConn.DownloadMap();
|
||||
} else {
|
||||
win.SetStatus("Could not connect");
|
||||
}
|
||||
|
|
|
@ -17,7 +17,12 @@ namespace OpenGridServices.Manager {
|
|||
|
||||
public void DrawGrid(RegionBlock[][] regions)
|
||||
{
|
||||
|
||||
for(int x=0; x<=regions.GetUpperBound(0); x++) {
|
||||
for(int y=0; y<=regions.GetUpperBound(1); y++) {
|
||||
Gdk.Image themap = new Gdk.Image(Gdk.ImageType.Fastest,Gdk.Visual.System,256,256);
|
||||
this.drawingarea1.GdkWindow.DrawImage(new Gdk.GC(this.drawingarea1.GdkWindow),themap,0,0,x*256,y*256,256,256);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void SetGridServerConnected(bool connected)
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
<ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<ProjectReference type="Gac" localcopy="True" refto="Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" />
|
||||
<ProjectReference type="Assembly" localcopy="True" refto="../../bin/XMLRPC.dll" />
|
||||
<ProjectReference type="Gac" localcopy="True" refto="System.Xml, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
</References>
|
||||
<GtkDesignInfo partialTypes="True" />
|
||||
</Project>
|
Loading…
Reference in New Issue