summaryrefslogtreecommitdiff
path: root/indra/newview/llviewerobject.cpp
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@geenzo.com>2023-09-25 19:20:46 -0700
committerJonathan "Geenz" Goodman <geenz@geenzo.com>2023-09-25 19:20:46 -0700
commit18b219cf83a1cd405cf36b9f58fc48f717409598 (patch)
treee50c6ac1ae9a6b8017f4a1333245cb3ab77e35bc /indra/newview/llviewerobject.cpp
parentd092f3e1dc1c322a0c3c1e55b9b6e1792d6b0f59 (diff)
Start removing the concept of placement mode - it's either a mirror or not.
DRTVWR-583
Diffstat (limited to 'indra/newview/llviewerobject.cpp')
-rw-r--r--indra/newview/llviewerobject.cpp31
1 files changed, 19 insertions, 12 deletions
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp
index dcdb66a6d4..9ac9ef7ea6 100644
--- a/indra/newview/llviewerobject.cpp
+++ b/indra/newview/llviewerobject.cpp
@@ -1161,18 +1161,25 @@ void detectMirror(const std::string &str, bool &mirror, U8 &mode)
{
mirror = true;
}
- else if (word == "ReflectedX" && mirror)
- {
- mode = 0;
- }
- else if (word == "ReflectedY" && mirror)
- {
- mode = 1;
- }
- else if (word == "ReflectedZ" && mirror)
- {
- mode = 2;
- }
+
+ if (mirror)
+ {
+ bool num = false;
+ std::string::const_iterator it = word.begin();
+ while (it != word.end())
+ {
+ num = std::isdigit(*it);
+ ++it;
+
+ if (!num)
+ break;
+ }
+
+ if (num)
+ {
+ mode = atoi(word.c_str());
+ }
+ }
}
}