mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2024-11-23 13:07:16 +00:00
reg3:: included tree rules for most hyperbolic honeycombs
This commit is contained in:
parent
bb016585ab
commit
256b12b140
1
honeycomb-rules-344.dat
Normal file
1
honeycomb-rules-344.dat
Normal file
@ -0,0 +1 @@
|
||||
xзМ■Иmц0┘╘:n▌╕q t.А╚М:|▄жя╡┘C┼┼" :@M─фШ(И▐s░R║╧V┴V│сл*яэY2┤dгёRxоv(x^*|>aИ╔≈Ч╞ЩK=┘zВЙ4Цs$Ф▐└└оp┌rw╟├ш\xг└В4/С_j 8/Ш┘7p┬°ШyXя|ВШ1©▒>D~УСcЮлГвЯ╝≥оoФЭ6АЖРrч'yyЁДЪ~иъчоЫK┴зhтNci5╨ч║┼[▓╚и╣╫E;Xrк░eв▄м`П╬│щ*ЗVQ╠W▒╙Ц╝К╗ь╚I5ЯЭ⌡╗ьkH╣ьУv#Уп╣3БY;#·╣D_Ь█?xhLХН
|
BIN
honeycomb-rules-354.dat
Normal file
BIN
honeycomb-rules-354.dat
Normal file
Binary file not shown.
BIN
honeycomb-rules-355.dat
Normal file
BIN
honeycomb-rules-355.dat
Normal file
Binary file not shown.
BIN
honeycomb-rules-436.dat
Normal file
BIN
honeycomb-rules-436.dat
Normal file
Binary file not shown.
BIN
honeycomb-rules-536.dat
Normal file
BIN
honeycomb-rules-536.dat
Normal file
Binary file not shown.
35
reg3.cpp
35
reg3.cpp
@ -1032,11 +1032,8 @@ EX namespace reg3 {
|
||||
}
|
||||
|
||||
hrmap_reg3_rule() : fp(0) {
|
||||
|
||||
if(S7 == 6) load_ruleset("honeycomb-rules-435.dat");
|
||||
else if(S7 == 20) load_ruleset("honeycomb-rules-353.dat");
|
||||
else if(ginf[geometry].vertex == 5) load_ruleset("honeycomb-rules-535.dat");
|
||||
else load_ruleset("honeycomb-rules-534.dat");
|
||||
|
||||
load_ruleset(get_rule_filename());
|
||||
|
||||
origin = tailored_alloc<heptagon> (S7);
|
||||
heptagon& h = *origin;
|
||||
@ -1065,11 +1062,15 @@ EX namespace reg3 {
|
||||
|
||||
if(geometry == gSpace535)
|
||||
quotient_map = new seifert_weber::hrmap_seifert_cover();
|
||||
else if(geometry == gSpace344)
|
||||
quotient_map = new hrmap_from_crystal;
|
||||
else
|
||||
quotient_map = new hrmap_field3(&fp);
|
||||
quotient_map = new hrmap_field3(&fp);
|
||||
|
||||
if(geometry == gSpace535)
|
||||
emerald_map = new seifert_weber::hrmap_seifert_cover();
|
||||
else if(geometry == gSpace344)
|
||||
emerald_map = new hrmap_from_crystal;
|
||||
else
|
||||
emerald_map = new hrmap_field3(&currfp);
|
||||
h.emeraldval = 0;
|
||||
@ -1264,9 +1265,29 @@ EX void link_structures(heptagon *h, heptagon *alt, hstate firststate) {
|
||||
}
|
||||
|
||||
EX bool reg3_rule_available = true;
|
||||
EX string other_rule = "";
|
||||
|
||||
EX string get_rule_filename() {
|
||||
if(other_rule != "") return other_rule;
|
||||
switch(geometry) {
|
||||
case gSpace336: return "honeycomb-rules-336.dat";
|
||||
case gSpace344: return "honeycomb-rules-344.dat";
|
||||
// case gSpace345: return "honeycomb-rules-345.dat";
|
||||
case gSpace353: return "honeycomb-rules-353.dat";
|
||||
case gSpace354: return "honeycomb-rules-354.dat";
|
||||
// case gSpace355: return "honeycomb-rules-355.dat";
|
||||
case gSpace435: return "honeycomb-rules-435.dat";
|
||||
case gSpace436: return "honeycomb-rules-436.dat";
|
||||
case gSpace534: return "honeycomb-rules-534.dat";
|
||||
case gSpace535: return "honeycomb-rules-535.dat";
|
||||
case gSpace536: return "honeycomb-rules-536.dat";
|
||||
|
||||
default: return "";
|
||||
}
|
||||
}
|
||||
|
||||
EX bool in_rule() {
|
||||
return reg3_rule_available && among(geometry, gSpace534, gSpace435, gSpace535, gSpace353);
|
||||
return reg3_rule_available && get_rule_filename() != "";
|
||||
}
|
||||
|
||||
EX int rule_get_root(int i) {
|
||||
|
Loading…
Reference in New Issue
Block a user