mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-10-19 16:07:40 +00:00
rulegen:: report all_solid_errors
This commit is contained in:
@@ -321,8 +321,12 @@ struct hr_solid_error : rulegen_retry {
|
|||||||
hr_solid_error() : rulegen_retry("solid error") {}
|
hr_solid_error() : rulegen_retry("solid error") {}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/** since the last restart */
|
||||||
int solid_errors;
|
int solid_errors;
|
||||||
|
|
||||||
|
/** total solid errors */
|
||||||
|
EX int all_solid_errors;
|
||||||
|
|
||||||
#if HDR
|
#if HDR
|
||||||
struct shortcut {
|
struct shortcut {
|
||||||
vector<int> pre;
|
vector<int> pre;
|
||||||
@@ -412,6 +416,8 @@ EX void shortcut_found(tcell *c, tcell *alt, const vector<twalker> &walkers, con
|
|||||||
|
|
||||||
EX void find_new_shortcuts(tcell *c, int d, tcell *alt, int delta) {
|
EX void find_new_shortcuts(tcell *c, int d, tcell *alt, int delta) {
|
||||||
|
|
||||||
|
solid_errors++;
|
||||||
|
all_solid_errors++;
|
||||||
if(flags & w_no_shortcut) return;
|
if(flags & w_no_shortcut) return;
|
||||||
|
|
||||||
ufindc(c);
|
ufindc(c);
|
||||||
@@ -495,7 +501,6 @@ void fix_distances(tcell *c) {
|
|||||||
if(d1 > d+1) {
|
if(d1 > d+1) {
|
||||||
if(c1->is_solid) {
|
if(c1->is_solid) {
|
||||||
find_new_shortcuts(c1, d+1, c1, 0);
|
find_new_shortcuts(c1, d+1, c1, 0);
|
||||||
solid_errors++;
|
|
||||||
}
|
}
|
||||||
d1 = d+1;
|
d1 = d+1;
|
||||||
remove_parentdir(c1);
|
remove_parentdir(c1);
|
||||||
@@ -1588,7 +1593,7 @@ EX void generate_rules() {
|
|||||||
analyzers.clear();
|
analyzers.clear();
|
||||||
important.clear();
|
important.clear();
|
||||||
treestates.clear();
|
treestates.clear();
|
||||||
hard_parents = single_live_branches = double_live_branches = 0;
|
hard_parents = single_live_branches = double_live_branches = all_solid_errors = 0;
|
||||||
|
|
||||||
t_origin.clear();
|
t_origin.clear();
|
||||||
cell_to_tcell.clear();
|
cell_to_tcell.clear();
|
||||||
|
Reference in New Issue
Block a user