- do iran(GALSIZE, &ix, &iy); while (game.state.galaxy[ix][iy].planets);
- game.state.galaxy[ix][iy].planets = 1;
- game.state.plnets[i].x = ix;
- game.state.plnets[i].y = iy;
- game.state.plnets[i].pclass = Rand()*3.0; // Planet class M N or O
- game.state.plnets[i].crystals = 1.5*Rand(); // 1 in 3 chance of crystals
- game.state.plnets[i].known = unknown;
+ do iran(GALSIZE, &ix, &iy); while (game.state.galaxy[ix][iy].planet != NOPLANET);
+ game.state.plnets[i].w.x = ix;
+ game.state.plnets[i].w.y = iy;
+ if (i < NINHAB) {
+ game.state.plnets[i].pclass = M; // All inhabited planets are class M
+ game.state.plnets[i].crystals = 0;
+ game.state.plnets[i].known = known;
+ game.state.plnets[i].inhabited = i;
+ } else {
+ game.state.plnets[i].pclass = Rand()*3.0; // Planet class M N or O
+ game.state.plnets[i].crystals = 1.5*Rand(); // 1 in 3 chance of crystals
+ game.state.plnets[i].known = unknown;
+ game.state.plnets[i].inhabited = UNINHABITED;
+ }
+ if ((game.options & OPTION_WORLDS) || i >= NINHAB)
+ game.state.galaxy[ix][iy].planet = i;