1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-11-08 06:59:55 +00:00

set_char_by_name

This commit is contained in:
Zeno Rogue 2023-05-19 01:18:02 +02:00
parent a5e327f67f
commit 9658950e6a
2 changed files with 61 additions and 49 deletions

View File

@ -4958,3 +4958,11 @@ Other fixes:
- fixed the orientation in the hat tiling
- fixed bugs when regenerating a map in the hat tiling + embedding
- fixed variation not showing in some geometries
2023-05-19 01:15 Update 12.1p:
Mostly embedding-related improvements:
- embedding scale parameter now works in "lower curvature" (horospher) embedding (redundant, but useful)
- better wall shading in EuclidSquare embeddings
- many embedding-related fixes
- "Non-Euclidean Third Dimension" demo (of embeddings) in RogueViz
(also, the "imaginary" hat parameter)

View File

@ -3773,60 +3773,64 @@ EX int read_config_args() {
auto& cs = vid.cs;
shift();
string s = args();
if(s == "dodek") {
cs.charid = 4;
cs.lefthanded = false;
cs.skincolor = 0x202020FF;
cs.eyecolor = 0x20C000FF;
cs.haircolor = 0x202020FF;
cs.dresscolor =0x424242FF;
cs.swordcolor = 0xF73333FF;
}
else if(s == "rudy") {
cs.charid = 4;
cs.lefthanded = false;
cs.skincolor = 0xA44139FF;
cs.eyecolor = 0xD59533FF;
cs.haircolor = 0xC6634AFF;
cs.dresscolor =0xC6634AFF;
cs.swordcolor = 0x3CBB33FF;
}
else if(s == "running") {
cs.charid = 6;
cs.lefthanded = false;
cs.skincolor = 0xFFFFFFFF;
cs.eyecolor = 0xFF;
cs.haircolor = 0xFFFFFFFF;
cs.dresscolor =0xFFFFFFFF;
cs.swordcolor = 0xFF0000FF;
}
else if(s == "princess") {
cs.charid = 3;
cs.lefthanded = true;
cs.skincolor = 0xEFD0C9FF;
cs.haircolor = 0x301800FF;
cs.eyecolor = 0xC000FF;
cs.dresscolor = 0x408040FF;
cs.swordcolor = 0xFFFFFFFF;
}
else if(s == "worker") {
cs.charid = 2;
cs.skincolor = 0xC77A58FF;
cs.haircolor = 0x502810FF;
cs.dresscolor = 0xC0C000FF;
cs.eyecolor = 0x500040FF;
cs.swordcolor = 0x808080FF;
}
else {
cs.charid = argi();
cs.lefthanded = cs.charid >= 10;
cs.charid %= 10;
}
set_char_by_name(cs, s);
}
else return 1;
return 0;
}
EX void set_char_by_name(charstyle& cs, const string& s) {
if(s == "dodek") {
cs.charid = 4;
cs.lefthanded = false;
cs.skincolor = 0x202020FF;
cs.eyecolor = 0x20C000FF;
cs.haircolor = 0x202020FF;
cs.dresscolor =0x424242FF;
cs.swordcolor = 0xF73333FF;
}
else if(s == "rudy") {
cs.charid = 4;
cs.lefthanded = false;
cs.skincolor = 0xA44139FF;
cs.eyecolor = 0xD59533FF;
cs.haircolor = 0xC6634AFF;
cs.dresscolor =0xC6634AFF;
cs.swordcolor = 0x3CBB33FF;
}
else if(s == "running") {
cs.charid = 6;
cs.lefthanded = false;
cs.skincolor = 0xFFFFFFFF;
cs.eyecolor = 0xFF;
cs.haircolor = 0xFFFFFFFF;
cs.dresscolor =0xFFFFFFFF;
cs.swordcolor = 0xFF0000FF;
}
else if(s == "princess") {
cs.charid = 3;
cs.lefthanded = true;
cs.skincolor = 0xEFD0C9FF;
cs.haircolor = 0x301800FF;
cs.eyecolor = 0xC000FF;
cs.dresscolor = 0x408040FF;
cs.swordcolor = 0xFFFFFFFF;
}
else if(s == "worker") {
cs.charid = 2;
cs.skincolor = 0xC77A58FF;
cs.haircolor = 0x502810FF;
cs.dresscolor = 0xC0C000FF;
cs.eyecolor = 0x500040FF;
cs.swordcolor = 0x808080FF;
}
else {
cs.charid = atoi(s.c_str());
cs.lefthanded = cs.charid >= 10;
cs.charid %= 10;
}
}
EX int read_param_args() {
const string& s = arg::args();
auto pos = s.find("=");