mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-27 14:37:16 +00:00
moved loadOldConfig to legacy.cpp and disabled it
This commit is contained in:
parent
3ac1e45130
commit
22c88d0960
@ -78,6 +78,7 @@ namespace hr { namespace inv { bool on, activating; } }
|
|||||||
#include "screenshot.cpp"
|
#include "screenshot.cpp"
|
||||||
#include "renderbuffer.cpp"
|
#include "renderbuffer.cpp"
|
||||||
#include "help.cpp"
|
#include "help.cpp"
|
||||||
|
#include "legacy.cpp"
|
||||||
#include "config.cpp"
|
#include "config.cpp"
|
||||||
#include "scores.cpp"
|
#include "scores.cpp"
|
||||||
#include "dialogs.cpp"
|
#include "dialogs.cpp"
|
||||||
|
115
config.cpp
115
config.cpp
@ -114,18 +114,6 @@ void initcs(charstyle &cs) {
|
|||||||
cs.lefthanded = false;
|
cs.lefthanded = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if CAP_CONFIG
|
|
||||||
void loadcs(FILE *f, charstyle& cs, int xvernum) {
|
|
||||||
int gflags, err =
|
|
||||||
fscanf(f, "%d%d%x%x%x%x", &gflags, &vid.language, &cs.skincolor, &cs.haircolor, &cs.swordcolor, &cs.dresscolor);
|
|
||||||
|
|
||||||
if(err) cs.charid = gflags & 15;
|
|
||||||
if(err) vid.samegender = (gflags & 16) ? true : false;
|
|
||||||
if(cs.charid == 3) hr::ignore(fscanf(f, "%x", &cs.dresscolor2));
|
|
||||||
if(xvernum >= 8990) hr::ignore(fscanf(f, "%x", &cs.uicolor));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
void savecolortable(colortable& ct, string name) {
|
void savecolortable(colortable& ct, string name) {
|
||||||
for(int i=0; i<isize(ct); i++)
|
for(int i=0; i<isize(ct); i++)
|
||||||
addsaver(ct[i], "color:" + name + ":" + its(i));
|
addsaver(ct[i], "color:" + name + ":" + its(i));
|
||||||
@ -557,107 +545,6 @@ void readf(FILE *f, ld& x) {
|
|||||||
x = fl;
|
x = fl;
|
||||||
}
|
}
|
||||||
|
|
||||||
void loadOldConfig(FILE *f) {
|
|
||||||
int gl=1, aa=1, bb=1, cc, dd;
|
|
||||||
int err;
|
|
||||||
float a, b, c, d;
|
|
||||||
err=fscanf(f, "%f%f%f%f\n", &a, &b, &c, &d);
|
|
||||||
if(err == 4) {
|
|
||||||
vid.scale = a; vid.alpha = c; vid.sspeed = d;
|
|
||||||
}
|
|
||||||
err=fscanf(f, "%d%d%d%d%d%d%d", &vid.wallmode, &vid.monmode, &vid.axes, &musicvolume, &vid.framelimit, &gl, &vid.antialias);
|
|
||||||
vid.usingGL = gl;
|
|
||||||
if(vid.antialias == 0) vid.antialias = AA_VERSION | AA_LINES | AA_LINEWIDTH;
|
|
||||||
if(vid.antialias == 1) vid.antialias = AA_NOGL | AA_VERSION | AA_LINES | AA_LINEWIDTH | AA_FONT;
|
|
||||||
double jps = vid.joypanspeed;
|
|
||||||
err=fscanf(f, "%d%d%d%lf%d%d", &vid.joyvalue, &vid.joyvalue2, &vid.joypanthreshold, &jps, &aa, &vid.flashtime);
|
|
||||||
vid.joypanspeed = jps;
|
|
||||||
autojoy = aa; aa = 0;
|
|
||||||
|
|
||||||
loadcs(f, vid.cs, 0);
|
|
||||||
|
|
||||||
aa=0; bb=0;
|
|
||||||
err=fscanf(f, "%d%d", &aa, &bb);
|
|
||||||
vid.darkhepta = aa; vid.shifttarget = bb;
|
|
||||||
|
|
||||||
aa = geometry; bb = specialland; cc = shmup::on; dd = hardcore;
|
|
||||||
err=fscanf(f, "%d%d%d%d", &aa, &bb, &cc, &dd);
|
|
||||||
geometry = eGeometry(aa); specialland = eLand(bb); shmup::on = cc; hardcore = dd;
|
|
||||||
|
|
||||||
shmup::loadConfig(f);
|
|
||||||
|
|
||||||
aa = rug::renderonce; bb = rug::rendernogl; dd = chaosmode;
|
|
||||||
int ee = vid.steamscore;
|
|
||||||
#if CAP_RUG
|
|
||||||
double rs = 2/rug::model_distance;
|
|
||||||
#else
|
|
||||||
double rs = 0;
|
|
||||||
#endif
|
|
||||||
err=fscanf(f, "%d%d%d%d%lf%d%d", &aa, &bb, &rug::texturesize, &cc, &rs, &ee, &dd);
|
|
||||||
rug::renderonce = aa; rug::rendernogl = bb;
|
|
||||||
chaosmode = dd; vid.steamscore = ee;
|
|
||||||
#if CAP_RUG
|
|
||||||
rug::model_distance = 2/rs;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
aa=conformal::autobandhistory;
|
|
||||||
double ps = polygonal::STAR, lv = conformal::lvspeed;
|
|
||||||
int pmb = pmodel;
|
|
||||||
err=fscanf(f, "%d%d%lf%d%d%lf",
|
|
||||||
&pmb, &polygonal::SI, &ps, &polygonal::deg,
|
|
||||||
&aa, &lv);
|
|
||||||
pmodel = eModel(pmb);
|
|
||||||
conformal::autobandhistory = aa; polygonal::STAR = ps; conformal::lvspeed = lv;
|
|
||||||
|
|
||||||
aa=conformal::autoband; bb=conformal::autobandhistory; cc=conformal::dospiral;
|
|
||||||
int crot;
|
|
||||||
err=fscanf(f, "%d%d%d%d%d%d",
|
|
||||||
&conformal::bandhalf, &conformal::bandsegment, &crot,
|
|
||||||
&aa, &bb, &cc);
|
|
||||||
conformal::autoband = aa; conformal::autobandhistory = bb; conformal::dospiral = cc;
|
|
||||||
conformal::rotation = crot * 90;
|
|
||||||
|
|
||||||
err=fscanf(f, "%d", &polygonal::maxcoef);
|
|
||||||
if(polygonal::maxcoef < 0) polygonal::maxcoef = 0;
|
|
||||||
if(polygonal::maxcoef > polygonal::MSI) polygonal::maxcoef = polygonal::MSI;
|
|
||||||
for(int i=0; i<=polygonal::maxcoef; i++) {
|
|
||||||
double re=0, im=0;
|
|
||||||
err=fscanf(f, "%lf%lf", &re, &im);
|
|
||||||
polygonal::coefr[i] = re;
|
|
||||||
polygonal::coefi[i] = im;
|
|
||||||
}
|
|
||||||
|
|
||||||
aa=vid.revcontrol; bb=vid.drawmousecircle;
|
|
||||||
d = vid.mspeed;
|
|
||||||
int sr;
|
|
||||||
err=fscanf(f, "%d%d%d%f%d%d", &aa, &bb, &sr, &d, &effvolume, &vid.particles);
|
|
||||||
vid.mspeed = d;
|
|
||||||
vid.revcontrol = aa; vid.drawmousecircle = bb;
|
|
||||||
|
|
||||||
readf(f, geom3::depth); readf(f, geom3::camera); readf(f, geom3::wall_height);
|
|
||||||
readf(f, geom3::rock_wall_ratio); readf(f, geom3::human_wall_ratio);
|
|
||||||
readf(f, geom3::lake_top); readf(f, geom3::lake_bottom);
|
|
||||||
|
|
||||||
err=fscanf(f, "%d %d %d", &geom3::tc_depth, &geom3::tc_camera, &geom3::tc_alpha);
|
|
||||||
|
|
||||||
readf(f, geom3::highdetail);
|
|
||||||
geom3::middetail = 200; readf(f, geom3::middetail);
|
|
||||||
if(geom3::middetail == 200) {
|
|
||||||
if(ISMOBILE)
|
|
||||||
geom3::highdetail = 0, geom3::middetail = 3;
|
|
||||||
else
|
|
||||||
geom3::highdetail = geom3::middetail = 5;
|
|
||||||
}
|
|
||||||
|
|
||||||
int gso = glyphsortorder; err=fscanf(f, "%d", &gso); glyphsortorder = eGlyphsortorder(gso);
|
|
||||||
|
|
||||||
readf(f, vid.yshift); readf(f, vid.camera_angle); readf(f, vid.ballangle); readf(f, vid.ballproj);
|
|
||||||
|
|
||||||
jps = vid.linewidth;
|
|
||||||
err=fscanf(f, "%d%d%d%d%lf\n", &vid.mobilecompasssize, &vid.aurastr, &vid.aurasmoothen, &vid.graphglyph, &jps);
|
|
||||||
vid.linewidth = jps;
|
|
||||||
}
|
|
||||||
|
|
||||||
map<string, shared_ptr<supersaver> > allconfigs;
|
map<string, shared_ptr<supersaver> > allconfigs;
|
||||||
|
|
||||||
void parseline(const string& str) {
|
void parseline(const string& str) {
|
||||||
@ -703,7 +590,9 @@ void loadConfig() {
|
|||||||
loadNewConfig(f);
|
loadNewConfig(f);
|
||||||
else {
|
else {
|
||||||
vid.full = fs;
|
vid.full = fs;
|
||||||
|
#if CAP_LEGACY
|
||||||
loadOldConfig(f);
|
loadOldConfig(f);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
fclose(f);
|
fclose(f);
|
||||||
|
2
hyper.h
2
hyper.h
@ -833,8 +833,6 @@ struct charstyle {
|
|||||||
|
|
||||||
string csname(charstyle& cs);
|
string csname(charstyle& cs);
|
||||||
void initcs(charstyle& cs);
|
void initcs(charstyle& cs);
|
||||||
void savecs(FILE *f, charstyle& cs, int vernum);
|
|
||||||
void loadcs(FILE *f, charstyle& cs, int vernum);
|
|
||||||
|
|
||||||
#define MAXPLAYER 7
|
#define MAXPLAYER 7
|
||||||
#define MAXJOY 8
|
#define MAXJOY 8
|
||||||
|
116
legacy.cpp
Normal file
116
legacy.cpp
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
#if CAP_LEGACY
|
||||||
|
namespace hr {
|
||||||
|
|
||||||
|
void loadcs(FILE *f, charstyle& cs, int xvernum) {
|
||||||
|
int gflags, err =
|
||||||
|
fscanf(f, "%d%d%x%x%x%x", &gflags, &vid.language, &cs.skincolor, &cs.haircolor, &cs.swordcolor, &cs.dresscolor);
|
||||||
|
|
||||||
|
if(err) cs.charid = gflags & 15;
|
||||||
|
if(err) vid.samegender = (gflags & 16) ? true : false;
|
||||||
|
if(cs.charid == 3) hr::ignore(fscanf(f, "%x", &cs.dresscolor2));
|
||||||
|
if(xvernum >= 8990) hr::ignore(fscanf(f, "%x", &cs.uicolor));
|
||||||
|
}
|
||||||
|
|
||||||
|
void loadOldConfig(FILE *f) {
|
||||||
|
int gl=1, aa=1, bb=1, cc, dd;
|
||||||
|
int err;
|
||||||
|
float a, b, c, d;
|
||||||
|
err=fscanf(f, "%f%f%f%f\n", &a, &b, &c, &d);
|
||||||
|
if(err == 4) {
|
||||||
|
vid.scale = a; vid.alpha = c; vid.sspeed = d;
|
||||||
|
}
|
||||||
|
err=fscanf(f, "%d%d%d%d%d%d%d", &vid.wallmode, &vid.monmode, &vid.axes, &musicvolume, &vid.framelimit, &gl, &vid.antialias);
|
||||||
|
vid.usingGL = gl;
|
||||||
|
if(vid.antialias == 0) vid.antialias = AA_VERSION | AA_LINES | AA_LINEWIDTH;
|
||||||
|
if(vid.antialias == 1) vid.antialias = AA_NOGL | AA_VERSION | AA_LINES | AA_LINEWIDTH | AA_FONT;
|
||||||
|
double jps = vid.joypanspeed;
|
||||||
|
err=fscanf(f, "%d%d%d%lf%d%d", &vid.joyvalue, &vid.joyvalue2, &vid.joypanthreshold, &jps, &aa, &vid.flashtime);
|
||||||
|
vid.joypanspeed = jps;
|
||||||
|
autojoy = aa; aa = 0;
|
||||||
|
|
||||||
|
loadcs(f, vid.cs, 0);
|
||||||
|
|
||||||
|
aa=0; bb=0;
|
||||||
|
err=fscanf(f, "%d%d", &aa, &bb);
|
||||||
|
vid.darkhepta = aa; vid.shifttarget = bb;
|
||||||
|
|
||||||
|
aa = geometry; bb = specialland; cc = shmup::on; dd = hardcore;
|
||||||
|
err=fscanf(f, "%d%d%d%d", &aa, &bb, &cc, &dd);
|
||||||
|
geometry = eGeometry(aa); specialland = eLand(bb); shmup::on = cc; hardcore = dd;
|
||||||
|
|
||||||
|
shmup::loadConfig(f);
|
||||||
|
|
||||||
|
aa = rug::renderonce; bb = rug::rendernogl; dd = chaosmode;
|
||||||
|
int ee = vid.steamscore;
|
||||||
|
#if CAP_RUG
|
||||||
|
double rs = 2/rug::model_distance;
|
||||||
|
#else
|
||||||
|
double rs = 0;
|
||||||
|
#endif
|
||||||
|
err=fscanf(f, "%d%d%d%d%lf%d%d", &aa, &bb, &rug::texturesize, &cc, &rs, &ee, &dd);
|
||||||
|
rug::renderonce = aa; rug::rendernogl = bb;
|
||||||
|
chaosmode = dd; vid.steamscore = ee;
|
||||||
|
#if CAP_RUG
|
||||||
|
rug::model_distance = 2/rs;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
aa=conformal::autobandhistory;
|
||||||
|
double ps = polygonal::STAR, lv = conformal::lvspeed;
|
||||||
|
int pmb = pmodel;
|
||||||
|
err=fscanf(f, "%d%d%lf%d%d%lf",
|
||||||
|
&pmb, &polygonal::SI, &ps, &polygonal::deg,
|
||||||
|
&aa, &lv);
|
||||||
|
pmodel = eModel(pmb);
|
||||||
|
conformal::autobandhistory = aa; polygonal::STAR = ps; conformal::lvspeed = lv;
|
||||||
|
|
||||||
|
aa=conformal::autoband; bb=conformal::autobandhistory; cc=conformal::dospiral;
|
||||||
|
int crot;
|
||||||
|
err=fscanf(f, "%d%d%d%d%d%d",
|
||||||
|
&conformal::bandhalf, &conformal::bandsegment, &crot,
|
||||||
|
&aa, &bb, &cc);
|
||||||
|
conformal::autoband = aa; conformal::autobandhistory = bb; conformal::dospiral = cc;
|
||||||
|
conformal::rotation = crot * 90;
|
||||||
|
|
||||||
|
err=fscanf(f, "%d", &polygonal::maxcoef);
|
||||||
|
if(polygonal::maxcoef < 0) polygonal::maxcoef = 0;
|
||||||
|
if(polygonal::maxcoef > polygonal::MSI) polygonal::maxcoef = polygonal::MSI;
|
||||||
|
for(int i=0; i<=polygonal::maxcoef; i++) {
|
||||||
|
double re=0, im=0;
|
||||||
|
err=fscanf(f, "%lf%lf", &re, &im);
|
||||||
|
polygonal::coefr[i] = re;
|
||||||
|
polygonal::coefi[i] = im;
|
||||||
|
}
|
||||||
|
|
||||||
|
aa=vid.revcontrol; bb=vid.drawmousecircle;
|
||||||
|
d = vid.mspeed;
|
||||||
|
int sr;
|
||||||
|
err=fscanf(f, "%d%d%d%f%d%d", &aa, &bb, &sr, &d, &effvolume, &vid.particles);
|
||||||
|
vid.mspeed = d;
|
||||||
|
vid.revcontrol = aa; vid.drawmousecircle = bb;
|
||||||
|
|
||||||
|
readf(f, geom3::depth); readf(f, geom3::camera); readf(f, geom3::wall_height);
|
||||||
|
readf(f, geom3::rock_wall_ratio); readf(f, geom3::human_wall_ratio);
|
||||||
|
readf(f, geom3::lake_top); readf(f, geom3::lake_bottom);
|
||||||
|
|
||||||
|
err=fscanf(f, "%d %d %d", &geom3::tc_depth, &geom3::tc_camera, &geom3::tc_alpha);
|
||||||
|
|
||||||
|
readf(f, geom3::highdetail);
|
||||||
|
geom3::middetail = 200; readf(f, geom3::middetail);
|
||||||
|
if(geom3::middetail == 200) {
|
||||||
|
if(ISMOBILE)
|
||||||
|
geom3::highdetail = 0, geom3::middetail = 3;
|
||||||
|
else
|
||||||
|
geom3::highdetail = geom3::middetail = 5;
|
||||||
|
}
|
||||||
|
|
||||||
|
int gso = glyphsortorder; err=fscanf(f, "%d", &gso); glyphsortorder = eGlyphsortorder(gso);
|
||||||
|
|
||||||
|
readf(f, vid.yshift); readf(f, vid.camera_angle); readf(f, vid.ballangle); readf(f, vid.ballproj);
|
||||||
|
|
||||||
|
jps = vid.linewidth;
|
||||||
|
err=fscanf(f, "%d%d%d%d%lf\n", &vid.mobilecompasssize, &vid.aurastr, &vid.aurasmoothen, &vid.graphglyph, &jps);
|
||||||
|
vid.linewidth = jps;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
#endif
|
@ -265,6 +265,10 @@
|
|||||||
#define CAP_RACING (!ISMOBWEB && !ISMINI)
|
#define CAP_RACING (!ISMOBWEB && !ISMINI)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef CAP_LEGACY
|
||||||
|
#define CAP_LEGACY 0
|
||||||
|
#endif
|
||||||
|
|
||||||
#if ISMOBILE
|
#if ISMOBILE
|
||||||
#define EXTRALICENSE "\n\nHyperRogue soundtrack under the Creative Commons BY-SA 3.0 license, http://creativecommons.org/licenses/by-sa/3.0/\nCrossroads, Graveyard, Land of Eternal Motion, Hall of Mirrors, Hell, R'Lyeh, Living Caves, Jungle, Desert, Icy Lands by Shawn Parrotte (http://www.shawnparrotte.com)\nCaribbean, Ivory Tower, Ocean, Palace by Will Savino (http://www.willsavino.net/)\n\n\n";
|
#define EXTRALICENSE "\n\nHyperRogue soundtrack under the Creative Commons BY-SA 3.0 license, http://creativecommons.org/licenses/by-sa/3.0/\nCrossroads, Graveyard, Land of Eternal Motion, Hall of Mirrors, Hell, R'Lyeh, Living Caves, Jungle, Desert, Icy Lands by Shawn Parrotte (http://www.shawnparrotte.com)\nCaribbean, Ivory Tower, Ocean, Palace by Will Savino (http://www.willsavino.net/)\n\n\n";
|
||||||
#undef XEXTRALICENSE
|
#undef XEXTRALICENSE
|
||||||
|
Loading…
Reference in New Issue
Block a user