forked from spring/spring
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSyncedFloat3.cpp
More file actions
39 lines (25 loc) · 925 Bytes
/
SyncedFloat3.cpp
File metadata and controls
39 lines (25 loc) · 925 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */
#include "SyncedFloat3.h"
#include "System/SpringMath.h"
#if defined(SYNCDEBUG) || defined(SYNCCHECK)
CR_BIND(SyncedFloat3, )
CR_REG_METADATA(SyncedFloat3, (CR_MEMBER(x), CR_MEMBER(y), CR_MEMBER(z)))
bool SyncedFloat3::IsInBounds() const
{
assert(float3::maxxpos > 0.0f); // check if initialized
return ((x >= 0.0f && x <= float3::maxxpos) && (z >= 0.0f && z <= float3::maxzpos));
}
void SyncedFloat3::ClampInBounds()
{
assert(float3::maxxpos > 0.0f); // check if initialized
x = Clamp((float)x, 0.0f, float3::maxxpos);
z = Clamp((float)z, 0.0f, float3::maxzpos);
//return *this;
}
void SyncedFloat3::ClampInMap()
{
assert(float3::maxxpos > 0.0f); // check if initialized
x = Clamp((float)x, 0.0f, float3::maxxpos + 1);
z = Clamp((float)z, 0.0f, float3::maxzpos + 1);
}
#endif // defined(SYNCDEBUG) || defined(SYNCCHECK)