using System.Collections.Generic; using RecRoom.Tools; namespace undead_universal_patch_il2cpp.Core.UndeadGameManager; public class AutoHealSettingsDTO { public float Delay { get; set; } public float Duration{ get; set; } } public class GameStartRequirementDTO { public int MinPlayerCount { get; set; } public int MinTeamCount { get; set; } public int MinTeamSize { get; set; } } public class DownButNotOutSettingsDTO { public float MaxDepletionDuration { get; set; } public float InvincibilityDuration { get; set; } } public struct EnemyCombatUISettingsDTO { public bool OpponentUISupported { get; set; } public bool TeammateUISupported { get; set; } } public struct FriendlyFireSettingsDTO { public bool PlayerOnPlayerFriendlyFireSupported { get; set; } public bool PlayerOnEnemyFriendlyFireSupported { get; set; } public bool EnemyOnPlayerFriendlyFireSupported { get; set; } public bool EnemyOnEnemyFriendlyFireSupported { get; set; } public bool GrenadesCanDamageTeammates { get; set; } } public struct PlayerCombatUISettingsDTO { public bool LocalPlayerUISupported { get; set; } public bool OpponentUISupported { get; set; } public bool TeammateUISupported { get; set; } public bool TeammateUIAlwaysVisible { get; set; } public bool OpponentUIAlwaysVisible { get; set; } } public class TeamConfigurationDTO { public int MaxTeamSize { get; set; } } public class PlayerVisualSettingsDTO { public bool UseTeamNameInsteadOfPlayerNameInNotifications { get; set; } public bool UseTeamColorInFeedback { get; set; } public TeamPlayerColorMode TeamColorMode { get; set; } public bool TeamOutfitsSupported { get; set; } public PlayerBeaconMode TeammateBeaconMode { get; set; } public PlayerBeaconMode OpponentBeaconMode { get; set; } } public class TeamRadioSettingsDTO { public float RadioVolume { get; set; } public float EnterRadioDistance { get; set; } public float ExitRadioDistance { get; set; } } public struct StatConfigurationDTO { public string Name { get; set; } public bool HideInUI { get; set; } public bool HideInHUD { get; set; } public GameUIDataModelStatFormat Format { get; set; } } public struct RespawnSettingsDTO { public float AutoRespawnDelay { get; set; } public bool RestoreHealthOnRespawn { get; set; } public float RespawnInvincibilityDuration { get; set; } } public struct ReviveSettingsDTO { public float RequiredDelay { get; set; } public float MaxReviveHealthNormalized { get; set; } public float MinReviveHealthNormalized { get; set; } public float MultiplierPerReviveHealthNormalized { get; set; } public bool PickupToolsOnRevive { get; set; } public float ReviverInvincibilityDuration { get; set; } public float ReviveeInvincibilityDuration { get; set; } public float HandshakeHoldDuration { get; set; } } public class GameConfigurationAssetDTO { public string Name { get; set; } public int LoadPriority { get; set; } public GameStartRequirementDTO ManualGameStartRequirement { get; set; } public bool AutomaticGameStartSupported { get; set; } public GameStartRequirementDTO AutomaticGameStartRequirement { get; set; } public bool PreGameVoiceOverSupported { get; set; } public bool ResultsVoiceOverSupported { get; set; } public bool CountdownVoiceOverSupported { get; set; } public bool GameModeNotificationsSupported { get; set; } public bool InGamePlayerNotificationsSupported { get; set; } public float GameStartDelay { get; set; } public float EndGameResultsDuration { get; set; } public bool RespawnOnGameStartSupported { get; set; } public bool RespawnOnGameEndSupported { get; set; } public bool JoinInProgressSupported { get; set; } public List TeamConfigurations { get; set; } public TeamSelectionMethod TeamSelectionMethod { get; set; } public bool EndGameIfStartRequirementsNotMet { get; set; } public bool ExplicitTeamSelectionSupported { get; set; } public bool GameRunningTeamChangeSupported { get; set; } public bool RespawnOnGameRunningTeamChangeSupported { get; set; } public bool SpectatingSupported { get; set; } public bool ShowOpenSlotsOnScoreboard { get; set; } public bool ClearTeamsAfterGame { get; set; } public PlayerVisualSettingsDTO TeamPlayerVisualSettings { get; set; } public bool TeamRadioSupported { get; set; } public TeamRadioSettingsDTO TeamRadioSettings { get; set; } public List StatConfigurations { get; set; } public bool PersistStatsOnGameStart { get; set; } public int MaxHealth { get; set; } public int MaxShield { get; set; } public bool SuppressWeaponDamage { get; set; } public bool AutoHealSupported { get; set; } public AutoHealSettingsDTO AutoHealSettings { get; set; } public bool DownButNotOutSupported { get; set; } public DownButNotOutSettingsDTO DownButNotOutSettings { get; set; } public bool AutoRespawnSupported { get; set; } public RespawnSettingsDTO RespawnSettings { get; set; } public GameCombatManager.PlayerReviveMode ReviveMode { get; set; } public ReviveSettingsDTO ReviveSettings { get; set; } public bool HUDSupported { get; set; } public FriendlyFireSettingsDTO FriendlyFireSettings { get; set; } public PlayerCombatUISettingsDTO PlayerCombatUISettings { get; set; } public EnemyCombatUISettingsDTO EnemyCombatUISettings { get; set; } public bool DeadMonochromeEffectSupported { get; set; } public bool DownButNotOutMonochromeEffectSupported { get; set; } public bool DamageRedFlashEffectSupported { get; set; } public bool DefaultHitFeedbackSupported { get; set; } public bool DefaultReviveFeedbackSupported { get; set; } public bool DefaultDownedOpponentFeedbackSupported { get; set; } public bool DefaultDownedLocalPlayerFeedbackSupported { get; set; } public bool DefaultDownedTeammateFeedbackSupported { get; set; } public bool DeadPersistentNotificationSupported { get; set; } public GameSpawnPointSelectionMethod SpawnPointSelectionMethod { get; set; } public SpawnableToolType MainHandTool { get; set; } public SpawnableToolType OffHandTool { get; set; } public bool ResetToolsOnGameStartSupported { get; set; } public ToolEntity.BrokenBehavior BrokenToolBehavior { get; set; } public bool EquipmentBeaconsSupported { get; set; } public bool WeaponInfiniteAmmoSupported { get; set; } public bool TeleportBufferDistanceRetricted { get; set; } public bool OutOfBoundsSupported { get; set; } public bool OutOfBoundsSpectatorsSupported { get; set; } public bool DownOutOfBoundsPlayers { get; set; } public float OutOfBoundsGracePeriod { get; set; } public float OutOfBoundsMaxDuration { get; set; } }