forked from frankc123/RustSource
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ContextStatus.cs
26 lines (22 loc) · 1.39 KB
/
ContextStatus.cs
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
using System;
using System.Runtime.CompilerServices;
public static class ContextStatus
{
public const ContextStatusFlags MASK_SPRITE = (ContextStatusFlags.SpriteFlag1 | ContextStatusFlags.SpriteFlag0);
public const ContextStatusFlags ObjectBroken = ContextStatusFlags.ObjectBroken;
public const ContextStatusFlags ObjectBusy = ContextStatusFlags.ObjectBusy;
public const ContextStatusFlags ObjectEmpty = ContextStatusFlags.ObjectEmpty;
public const ContextStatusFlags ObjectOccupied = ContextStatusFlags.ObjectOccupied;
public const ContextStatusFlags SPRITE_ALWAYS = (ContextStatusFlags.SpriteFlag1 | ContextStatusFlags.SpriteFlag0);
public const ContextStatusFlags SPRITE_DEFAULT = 0;
public const ContextStatusFlags SPRITE_FRACTION = ContextStatusFlags.SpriteFlag0;
public const ContextStatusFlags SPRITE_NEVER = ContextStatusFlags.SpriteFlag1;
public static ContextStatusFlags CopyWithSpriteSetting(this ContextStatusFlags statusFlags, ContextStatusFlags SPRITE_SETTING)
{
return ((statusFlags & ~(ContextStatusFlags.SpriteFlag1 | ContextStatusFlags.SpriteFlag0)) | (SPRITE_SETTING & (ContextStatusFlags.SpriteFlag1 | ContextStatusFlags.SpriteFlag0)));
}
public static ContextStatusFlags GetSpriteFlags(this ContextStatusFlags statusFlags)
{
return (statusFlags & (ContextStatusFlags.SpriteFlag1 | ContextStatusFlags.SpriteFlag0));
}
}