Skip to content
Snippets Groups Projects
Commit 5cfb4e78 authored by deuce's avatar deuce
Browse files

Read port/planet/players in a sector as a single operation.

parent 22ce9688
Branches
No related tags found
No related merge requests found
...@@ -208,11 +208,12 @@ function DisplaySector(sector, secnum, helponly, mainfname) ...@@ -208,11 +208,12 @@ function DisplaySector(sector, secnum, helponly, mainfname)
var count=0; var count=0;
var otherships=new Array(); var otherships=new Array();
var otherplayer; var otherplayer;
var reads=[];
for(i=0;i<sector.Ships.length;i++) { for(i=0;i<sector.Ships.length;i++) {
if(sector.Ships[i]==player.Record) if(sector.Ships[i]==player.Record)
continue; continue;
otherships.push(players.Get(sector.Ships[i])); reads.push([Settings.DB,'players.'+sector.Ships[i],LOCK_READ,'players.'+sector.Ships[i]]);
} }
if(user.settings&USER_ANSI) { if(user.settings&USER_ANSI) {
...@@ -223,7 +224,7 @@ function DisplaySector(sector, secnum, helponly, mainfname) ...@@ -223,7 +224,7 @@ function DisplaySector(sector, secnum, helponly, mainfname)
console.printfile(fname("planet.ans")); console.printfile(fname("planet.ans"));
if(sector.Fighters > 0 && sector.FighterOwner != 0) if(sector.Fighters > 0 && sector.FighterOwner != 0)
console.printfile(fname("fighters.ans")); console.printfile(fname("fighters.ans"));
if(otherships.length > 0) if(reads.length > 0)
console.printfile(fname("ship.ans")); console.printfile(fname("ship.ans"));
console.printfile(fname("sector.ans")); console.printfile(fname("sector.ans"));
console.attributes="HM"; console.attributes="HM";
...@@ -231,26 +232,37 @@ function DisplaySector(sector, secnum, helponly, mainfname) ...@@ -231,26 +232,37 @@ function DisplaySector(sector, secnum, helponly, mainfname)
} }
if(helponly) if(helponly)
return; return;
if(sector.Port > 0)
reads.push([Settings.DB,'ports.'+sector.Port,LOCK_READ,'port']);
if(sector.Planet > 0)
reads.push([Settings.DB,'planets.'+sector.Planet,LOCK_READ,'planet']);
sd=db.readmulti(reads);
console.crlf(); console.crlf();
console.attributes="HY"; console.attributes="HY";
console.writeln("Sector "+secnum); console.writeln("Sector "+secnum);
console.attributes="HR"; console.attributes="HR";
console.write("Port "); console.write("Port ");
if(sector.Port > 0) { if(sector.Port > 0) {
var port=db.read(Settings.DB,'ports.'+sector.Port,LOCK_READ); console.write(sd.port.Name+", class "+sd.port.Class);
console.write(port.Name+", class "+port.Class);
} }
else else
console.write("None"); console.write("None");
console.crlf(); console.crlf();
console.attributes="HB"; console.attributes="HB";
if(sector.Planet) { if(sector.Planet) {
var planet=db.read(Settings.DB,'planets.'+sector.Planet,LOCK_READ); console.writeln("Planet "+sd.planet.Name);
console.writeln("Planet "+planet.Name);
} }
console.attributes="HC"; console.attributes="HC";
console.writeln("Other Ships"); console.writeln("Other Ships");
console.attributes="C"; console.attributes="C";
for(i in sd) {
if(i.substr(0,8)=='players.') {
otherships.push(new Player(sd[i],i.substr(8)));
}
}
for(i in otherships) { for(i in otherships) {
otherplayer=otherships[i]; otherplayer=otherships[i];
console.write(" "+otherplayer.Alias); console.write(" "+otherplayer.Alias);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment