forked from Exiled-Official/EXILED
-
Notifications
You must be signed in to change notification settings - Fork 67
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Add a bunch * Fix * Security * Make changes * remove unused usings * Getting inventory * oops * Dev commit * use exiled --------- Co-authored-by: Yamato <66829532+louis1706@users.noreply.github.com>
- Loading branch information
Showing
14 changed files
with
290 additions
and
81 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
// ----------------------------------------------------------------------- | ||
// <copyright file="HazardType.cs" company="Exiled Team"> | ||
// Copyright (c) Exiled Team. All rights reserved. | ||
// Licensed under the CC BY-SA 3.0 license. | ||
// </copyright> | ||
// ----------------------------------------------------------------------- | ||
|
||
namespace Exiled.API.Enums | ||
{ | ||
using Exiled.API.Features.Hazards; | ||
|
||
/// <summary> | ||
/// Unique identifier for a <see cref="Hazard"/>. | ||
/// </summary> | ||
public enum HazardType | ||
{ | ||
/// <summary> | ||
/// SCP-939 amnestic cloud. | ||
/// </summary> | ||
AmnesticCloud, | ||
|
||
/// <summary> | ||
/// Sinkhole spawned at start of round. | ||
/// </summary> | ||
Sinkhole, | ||
|
||
/// <summary> | ||
/// SCP-173 tantrum. | ||
/// </summary> | ||
Tantrum, | ||
|
||
/// <summary> | ||
/// Should never happen | ||
/// </summary> | ||
Unknown, | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
// ----------------------------------------------------------------------- | ||
// <copyright file="BitwiseExtensions.cs" company="Exiled Team"> | ||
// Copyright (c) Exiled Team. All rights reserved. | ||
// Licensed under the CC BY-SA 3.0 license. | ||
// </copyright> | ||
// ----------------------------------------------------------------------- | ||
|
||
namespace Exiled.API.Extensions | ||
{ | ||
using System; | ||
|
||
/// <summary> | ||
/// Extensions for bitwise operations. | ||
/// </summary> | ||
public static class BitwiseExtensions | ||
{ | ||
/// <summary> | ||
/// Adds the specified flags to the given enum value. | ||
/// </summary> | ||
/// <typeparam name="T">The type of the enum.</typeparam> | ||
/// <param name="flags">The enum value to add flags to.</param> | ||
/// <param name="newFlags">The flags to add.</param> | ||
/// <returns>The enum value with the specified flags added.</returns> | ||
public static T AddFlags<T>(this T flags, params T[] newFlags) | ||
where T : Enum => flags.ModifyFlags(true, newFlags); | ||
|
||
/// <summary> | ||
/// Removes the specified flags from the given enum value. | ||
/// </summary> | ||
/// <typeparam name="T">The type of the enum.</typeparam> | ||
/// <param name="flags">The enum value to remove flags from.</param> | ||
/// <param name="oldFlags">The flags to remove.</param> | ||
/// <returns>The enum value with the specified flags removed.</returns> | ||
public static T RemoveFlags<T>(this T flags, params T[] oldFlags) | ||
where T : Enum => flags.ModifyFlags(false, oldFlags); | ||
|
||
/// <summary> | ||
/// Sets the specified flag to the given value, default is true. | ||
/// </summary> | ||
/// <param name="flags">The flags enum to modify.</param> | ||
/// <param name="value">The value to set the flag to.</param> | ||
/// <param name="changeFlags">The flags to modify.</param> | ||
/// <typeparam name="T">The type of the enum.</typeparam> | ||
/// <returns>The flags enum with the flag set to the given value.</returns> | ||
public static T ModifyFlags<T>(this T flags, bool value, params T[] changeFlags) | ||
where T : Enum | ||
{ | ||
long currentValue = Convert.ToInt64(flags); | ||
|
||
foreach (T flag in changeFlags) | ||
{ | ||
long flagValue = Convert.ToInt64(flag); | ||
|
||
if (value) | ||
currentValue |= flagValue; | ||
else | ||
currentValue &= ~flagValue; | ||
} | ||
|
||
return (T)Enum.ToObject(typeof(T), currentValue); | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.