randomized windmap placement; Safety is now marked as 'dangerous' in Volcanic

This commit is contained in:
Zeno Rogue 2017-10-12 00:20:18 +02:00
parent c18efff9df
commit c09d9532ef
3 changed files with 41 additions and 16 deletions

View File

@ -1436,6 +1436,19 @@ int fieldval_uniq(cell *c) {
}
}
int fieldval_uniq_rand(cell *c, int randval) {
if(sphere || torus || euclid)
// we do not care in these cases
return fieldval_uniq(c);
if(c->type == 7) return fp43.gmul(c->master->fieldval, randval)/7;
else {
int z = 0;
for(int u=0; u<6; u+=2)
z = max(z, btspin(fp43.gmul(createMov(c, u)->master->fieldval, randval), c->spin(u)));
return -1-z;
}
}
int subpathid = fp43.matcode[fp43.strtomatrix("RRRPRRRRRPRRRP")];
int subpathorder = fp43.order(fp43.matrices[subpathid]);

File diff suppressed because one or more lines are too long

View File

@ -198,6 +198,7 @@ eOrbLandRelation getOLR(eItem it, eLand l) {
if(it == itOrbLife && (l == laKraken)) return olrUseless;
if(l == laVolcano && it == itOrbSafety) return olrDangerous;
if(l == laVolcano && itemBurns(it)) return olrBurns;
if(it == itOrbAir && l == laAlchemist) return olrUseless;