mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-01 03:46:16 +00:00
rogueviz::kohonen:: legends
This commit is contained in:
parent
300d0b80ed
commit
223732bbfb
@ -594,14 +594,16 @@ int showsample(int id) {
|
|||||||
return isize(samples_shown) - 1;
|
return isize(samples_shown) - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void showsample(string s) {
|
int showsample(string s) {
|
||||||
if(s == "") return;
|
if(s == "") return -1;
|
||||||
|
int ret = -1;
|
||||||
for(int i=0; i<samples; i++) {
|
for(int i=0; i<samples; i++) {
|
||||||
if(s[0] != '*' && data[i].name == s)
|
if(s[0] != '*' && data[i].name == s)
|
||||||
showsample(i);
|
ret = showsample(i);
|
||||||
if(s[0] == '*' && data[i].name.find(s.substr(1)) != string::npos)
|
if(s[0] == '*' && data[i].name.find(s.substr(1)) != string::npos)
|
||||||
showsample(i);
|
ret = showsample(i);
|
||||||
}
|
}
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
void showbestsamples() {
|
void showbestsamples() {
|
||||||
|
15
rogueviz.cpp
15
rogueviz.cpp
@ -1298,8 +1298,17 @@ void readcolor(const string& cfname) {
|
|||||||
|
|
||||||
colorpair x;
|
colorpair x;
|
||||||
int c2 = fgetc(f);
|
int c2 = fgetc(f);
|
||||||
|
int known_id = -1;
|
||||||
|
bool force = false;
|
||||||
|
|
||||||
|
if(kohonen::samples && c2 == '!') {
|
||||||
|
force = true;
|
||||||
|
c2 = fgetc(f);
|
||||||
|
if(c2 == 10 || c2 == 13) continue;
|
||||||
|
}
|
||||||
|
|
||||||
if(kohonen::samples && c2 == '+') {
|
if(kohonen::samples && c2 == '+') {
|
||||||
kohonen::showsample(lab);
|
known_id = kohonen::showsample(lab);
|
||||||
c2 = fgetc(f);
|
c2 = fgetc(f);
|
||||||
if(c2 == 10 || c2 == 13) continue;
|
if(c2 == 10 || c2 == 13) continue;
|
||||||
}
|
}
|
||||||
@ -1317,7 +1326,7 @@ void readcolor(const string& cfname) {
|
|||||||
x = vdata[getid(lab2)].cp;
|
x = vdata[getid(lab2)].cp;
|
||||||
}
|
}
|
||||||
else if(c2 == '@') {
|
else if(c2 == '@') {
|
||||||
legend.push_back(getid(lab));
|
legend.push_back(known_id == -1 ? getid(lab) : known_id);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
else if(c2 == '/') {
|
else if(c2 == '/') {
|
||||||
@ -1341,7 +1350,7 @@ void readcolor(const string& cfname) {
|
|||||||
vdata[i].cp = x;
|
vdata[i].cp = x;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(kohonen::samples) {
|
else if(kohonen::samples && !force) {
|
||||||
for(int i=0; i<isize(vdata); i++)
|
for(int i=0; i<isize(vdata); i++)
|
||||||
if(vdata[i].name == lab) {
|
if(vdata[i].name == lab) {
|
||||||
vdata[i].cp = x;
|
vdata[i].cp = x;
|
||||||
|
@ -77,7 +77,7 @@ namespace rogueviz {
|
|||||||
namespace kohonen {
|
namespace kohonen {
|
||||||
extern int samples;
|
extern int samples;
|
||||||
int showsample(int id);
|
int showsample(int id);
|
||||||
void showsample(string id);
|
int showsample(string id);
|
||||||
void describe(cell *c);
|
void describe(cell *c);
|
||||||
void steps();
|
void steps();
|
||||||
void showMenu();
|
void showMenu();
|
||||||
|
Loading…
Reference in New Issue
Block a user