├── assets
├── production
│ ├── client
│ │ └── .gitkeep
│ └── server
│ │ └── .gitkeep
├── staging
│ ├── client
│ │ └── .gitkeep
│ └── server
│ │ └── .gitkeep
├── development
│ ├── client
│ │ └── .gitkeep
│ └── server
│ │ └── .gitkeep
├── intersect-logo-qu.bmp
├── intersect-logo-qu.ico
├── intersect-logo-qu.png
└── .gitignore
├── .idea
└── .idea.Intersect
│ └── .idea
│ ├── .name
│ ├── encodings.xml
│ ├── vcs.xml
│ ├── indexLayout.xml
│ ├── misc.xml
│ └── .gitignore
├── Examples
├── .idea
│ └── .idea.Intersect.Examples
│ │ └── .idea
│ │ ├── .name
│ │ ├── encodings.xml
│ │ ├── vcs.xml
│ │ ├── indexLayout.xml
│ │ ├── misc.xml
│ │ └── .gitignore
├── Intersect.Examples.Plugin.Client
│ ├── Assets
│ │ └── join-our-discord.png
│ └── ExamplePluginConfiguration.cs
├── Intersect.Examples.Plugin.ClientVB
│ ├── Assets
│ │ └── join-our-discord.png
│ └── ExamplePluginConfiguration.vb
└── Intersect.Examples.Plugin
│ └── Packets
│ ├── Client
│ └── ExamplePluginClientPacket.cs
│ └── Server
│ └── ExamplePluginServerPacket.cs
├── Intersect.Client
├── Icon.bmp
├── Resources
│ ├── openal32.dll
│ ├── Shaders
│ │ └── radialgradient.xnb
│ └── MonoGame.Framework.dll.config
├── MonoGame
│ ├── NativeInterop
│ │ ├── KnownLibrary.cs
│ │ └── Platform.cs
│ └── Audio
│ │ └── MonoAudioInstance.cs
├── FodyWeavers.xml
├── Entities
│ ├── FriendInstance.cs
│ ├── Events
│ │ ├── Hold.cs
│ │ └── Dialog.cs
│ └── HotbarInstance.cs
├── Interface
│ └── Game
│ │ └── DescriptionWindows
│ │ └── Components
│ │ └── DividerComponent.cs
├── Core
│ └── IClientContext.cs
├── Maps
│ └── MapGrid.cs
└── Spells
│ └── Spell.cs
├── Intersect.Editor
├── DarkUI.dll
├── Pngcs.dll
├── sqlite3.dll
├── Resources
│ ├── layer.png
│ ├── layer_face.png
│ ├── layer_sel.png
│ ├── paintbrush.png
│ ├── sqlite3x64.dll
│ ├── sqlite3x86.dll
│ ├── layer_hidden.png
│ ├── layer_face_sel.png
│ ├── intersect-logo-qu.ico
│ └── Shaders
│ │ └── radialgradient_editor.xnb
├── Properties
│ └── launchSettings.json
├── FodyWeavers.xml
├── GlobalSuppressions.cs
└── Maps
│ └── MapGridItem.cs
├── Intersect.Server
├── Resources
│ ├── e_sqlite3x64.dll
│ ├── e_sqlite3x86.dll
│ ├── libe_sqlite3.dylib
│ ├── libe_sqlite3_x64.so
│ └── libe_sqlite3_x86.so
├── FodyWeavers.xml
├── Database
│ ├── PlayerData
│ │ └── Players
│ │ │ ├── ISlot.cs
│ │ │ └── IPlayerOwned.cs
│ ├── ISeedableContext.cs
│ ├── ContextProvider.Locking.cs
│ ├── IDbContext.cs
│ └── Logging
│ │ └── ILoggingContext.cs
├── Web
│ ├── RestApi
│ │ ├── Payloads
│ │ │ ├── SortDirection.cs
│ │ │ ├── VariableValue.cs
│ │ │ ├── GuildRank.cs
│ │ │ ├── PasswordValidation.cs
│ │ │ ├── LevelChange.cs
│ │ │ ├── NameChange.cs
│ │ │ ├── SpellInfo.cs
│ │ │ ├── ClassChange.cs
│ │ │ ├── PagingInfo.cs
│ │ │ ├── UserInfo.cs
│ │ │ ├── ItemInfo.cs
│ │ │ ├── AdminChange.cs
│ │ │ ├── IpAddress.cs
│ │ │ └── AuthorizedChange.cs
│ │ ├── IAppConfigurationProvider.cs
│ │ ├── Configuration
│ │ │ └── NetworkTypes.cs
│ │ ├── Logging
│ │ │ └── IntersectLoggerFactory.cs
│ │ ├── Extensions
│ │ │ └── HttpRequestMessageExtensions.cs
│ │ ├── Authentication
│ │ │ └── AuthenticationProvider.cs
│ │ └── Types
│ │ │ └── DataPage.cs
│ └── Utilities
│ │ └── HeaderHelper.cs
├── Core
│ ├── Services
│ │ ├── IConsoleService.cs
│ │ └── ILogicService.cs
│ ├── CommandParsing
│ │ ├── Arguments
│ │ │ └── HelpArgument.cs
│ │ └── ParserContext.cs
│ └── Commands
│ │ ├── ExitCommand.cs
│ │ ├── ServerCommand.cs
│ │ ├── NetDebugCommand.cs
│ │ ├── MakePublicCommand.cs
│ │ └── MakePrivateCommand.cs
├── Maps
│ ├── MapNpcSpawn.cs
│ ├── MapResourceSpawn.cs
│ └── MapItemSpawn.cs
├── Entities
│ ├── Label.cs
│ └── Pathfinding
│ │ └── PathfinderTarget.cs
├── Migrations
│ ├── 20191030214333_PlayerUpgrades_Labels.cs
│ ├── 20220331140427_GuildBankMaxSlotsMigration.cs
│ ├── Game
│ │ ├── 20211031200145_FixQuestTaskCompletionEvents.cs
│ │ ├── 20201004032158_EnablingCerasVersionTolerance.cs
│ │ ├── 20210815153451_TickAnimationMigration.cs
│ │ ├── 20190306224847_BoundSpells.cs
│ │ ├── 20190303234637_SpellUpgrades_OnHit_Shields.cs
│ │ ├── 20190530000628_AddingCraftingQuantities.cs
│ │ ├── 20190615010038_AddingExpOveridesToClasses.cs
│ │ └── 20190726203949_SpellUpgrades_Percentage_Buffs.cs
│ ├── 20200301145105_SavingPlayerLabelsInDb.cs
│ └── 20190804133420_Custom_Player_Name_Colors.cs
├── Plugins
│ └── Helpers
│ │ └── ServerLifecycleHelper.cs
└── Metrics
│ └── Controllers
│ └── ApplicationMetricsController.cs
├── Intersect (Core)
├── IO
│ ├── ISaveable.cs
│ ├── ILoadable.cs
│ ├── ISaveable.Generic.cs
│ └── ISaveableProvider.cs
├── Enums
│ ├── TargetType.cs
│ ├── Gender.cs
│ ├── MapZone.cs
│ ├── Vital.cs
│ ├── StringVariableComparator.cs
│ ├── Access.cs
│ ├── DamageType.cs
│ ├── EventGraphicType.cs
│ ├── GrappleOption.cs
│ ├── EventMovementType.cs
│ ├── QuestObjective.cs
│ ├── ConsumableType.cs
│ ├── EventRenderLayer.cs
│ ├── MapListUpdate.cs
│ ├── GuildMemberUpdateAction.cs
│ ├── VariableDataType.cs
│ ├── NpcMovement.cs
│ ├── SpellType.cs
│ ├── EventTrigger.cs
│ ├── NpcAggression.cs
│ ├── WarpDirection.cs
│ ├── ChatboxChannel.cs
│ ├── EntityType.cs
│ ├── NpcSpawnDirection.cs
│ ├── Stat.cs
│ ├── EventMovementSpeed.cs
│ ├── EventMovementFrequency.cs
│ ├── SpellTargetType.cs
│ ├── TypewriterBehavior.cs
│ ├── VariableComparator.cs
│ ├── ItemType.cs
│ ├── ItemEffect.cs
│ ├── Direction.cs
│ ├── MapAttribute.cs
│ ├── VariableType.cs
│ ├── AdminAction.cs
│ ├── ChatboxTab.cs
│ ├── SpellEffect.cs
│ └── SpellCastFailureReason.cs
├── Localization
│ ├── BooleanStyle.cs
│ ├── Localized.cs
│ └── LocaleNamespace.cs
├── Models
│ ├── IObject.cs
│ ├── INamedObject.cs
│ └── IFolderable.cs
├── GameObjects
│ ├── Annotations
│ │ ├── EditorFieldType.cs
│ │ ├── EditorTimeAttribute.cs
│ │ └── EditorEnumAttribute.cs
│ ├── IGameObject.cs
│ ├── Maps
│ │ ├── MapList
│ │ │ ├── MapListItem.cs
│ │ │ └── MapListFolder.cs
│ │ ├── MapResourceSpawn.cs
│ │ ├── MapTile.cs
│ │ └── MapNpcSpawn.cs
│ ├── Drop.cs
│ ├── Events
│ │ └── EventMovement.cs
│ └── TilesetBase.cs
├── Network
│ ├── Packets
│ │ ├── Server
│ │ │ ├── SpellPacket.cs
│ │ │ ├── StopMusicPacket.cs
│ │ │ ├── AdminPanelPacket.cs
│ │ │ ├── HidePicturePacket.cs
│ │ │ ├── JoinGamePacket.cs
│ │ │ ├── StopSoundsPacket.cs
│ │ │ ├── EnteringGamePacket.cs
│ │ │ ├── CharacterCreationPacket.cs
│ │ │ ├── NpcEntityPacket.cs
│ │ │ ├── ConfigPacket.cs
│ │ │ ├── PlayMusicPacket.cs
│ │ │ ├── MapAreaPacket.cs
│ │ │ ├── MoveRoutePacket.cs
│ │ │ ├── PlaySoundPacket.cs
│ │ │ ├── StatPointsPacket.cs
│ │ │ ├── HotbarPacket.cs
│ │ │ ├── ResourceEntityPacket.cs
│ │ │ ├── EnterMapPacket.cs
│ │ │ ├── TimeDataPacket.cs
│ │ │ ├── TradePacket.cs
│ │ │ ├── MapListPacket.cs
│ │ │ ├── SpellsPacket.cs
│ │ │ ├── PingPacket.cs
│ │ │ ├── QuestOfferPacket.cs
│ │ │ ├── CancelCastPacket.cs
│ │ │ ├── PartyPacket.cs
│ │ │ ├── InventoryPacket.cs
│ │ │ ├── PlayerDeathPacket.cs
│ │ │ ├── OpenEditorPacket.cs
│ │ │ ├── TargetOverridePacket.cs
│ │ │ ├── MapEntitiesPacket.cs
│ │ │ ├── PasswordResetResultPacket.cs
│ │ │ ├── ActionMsgPackets.cs
│ │ │ ├── LabelPacket.cs
│ │ │ ├── PlayAnimationPackets.cs
│ │ │ ├── BagPacket.cs
│ │ │ ├── BagUpdatePacket.cs
│ │ │ ├── BankUpdatePacket.cs
│ │ │ ├── ItemCooldownPacket.cs
│ │ │ ├── ShopPacket.cs
│ │ │ ├── SpellCooldownPacket.cs
│ │ │ ├── ErrorMessagePacket.cs
│ │ │ ├── SpellUpdatePacket.cs
│ │ │ ├── CraftingTablePacket.cs
│ │ │ ├── ExperiencePacket.cs
│ │ │ └── SpellCastPacket.cs
│ │ ├── Client
│ │ │ ├── CloseBankPacket.cs
│ │ │ ├── CloseShopPacket.cs
│ │ │ ├── EnterGamePacket.cs
│ │ │ ├── AcceptTradePacket.cs
│ │ │ ├── CloseBagPacket.cs
│ │ │ ├── PartyLeavePacket.cs
│ │ │ ├── CloseCraftingPacket.cs
│ │ │ ├── DeclineTradePacket.cs
│ │ │ ├── NewCharacterPacket.cs
│ │ │ ├── RequestFriendsPacket.cs
│ │ │ ├── OpenAdminWindowPacket.cs
│ │ │ ├── PingPacket.cs
│ │ │ ├── GuildLeavePacket.cs
│ │ │ ├── RequestGuildPacket.cs
│ │ │ ├── GuildInviteAcceptPacket.cs
│ │ │ ├── GuildInviteDeclinePacket.cs
│ │ │ ├── HotbarSwapPacket.cs
│ │ │ ├── SwapSpellsPacket.cs
│ │ │ ├── SwapBagItemsPacket.cs
│ │ │ ├── SwapInvItemsPacket.cs
│ │ │ ├── SwapBankItemsPacket.cs
│ │ │ ├── BuyItemPacket.cs
│ │ │ ├── DropItemPacket.cs
│ │ │ ├── SellItemPacket.cs
│ │ │ ├── OfferTradeItemPacket.cs
│ │ │ ├── RevokeTradeItemPacket.cs
│ │ │ ├── BlockPacket.cs
│ │ │ ├── UnequipItemPacket.cs
│ │ │ ├── UpgradeStatPacket.cs
│ │ │ ├── NeedMapPacket.cs
│ │ │ ├── AttackPacket.cs
│ │ │ ├── PartyKickPacket.cs
│ │ │ ├── AbandonQuestPacket.cs
│ │ │ ├── LogoutPacket.cs
│ │ │ ├── PictureClosedPacket.cs
│ │ │ ├── TradeRequestPacket.cs
│ │ │ ├── ActivateEventPacket.cs
│ │ │ ├── DeleteCharacterPacket.cs
│ │ │ ├── SelectCharacterPacket.cs
│ │ │ ├── AdminActionPacket.cs
│ │ │ ├── RequestPasswordResetPacket.cs
│ │ │ ├── DepositItemPacket.cs
│ │ │ ├── WithdrawItemPacket.cs
│ │ │ ├── StoreBagItemPacket.cs
│ │ │ ├── RetrieveBagItemPacket.cs
│ │ │ ├── ChatMsgPacket.cs
│ │ │ ├── BumpPacket.cs
│ │ │ ├── LoginPacket.cs
│ │ │ ├── UseItemPacket.cs
│ │ │ ├── UpdateFriendsPacket.cs
│ │ │ ├── UseSpellPacket.cs
│ │ │ └── CraftItemPacket.cs
│ │ └── Editor
│ │ │ ├── PingPacket.cs
│ │ │ ├── NeedMapPacket.cs
│ │ │ ├── EnterMapPacket.cs
│ │ │ ├── AddTilesetsPacket.cs
│ │ │ ├── RequestGridPacket.cs
│ │ │ ├── SaveTimeDataPacket.cs
│ │ │ ├── CreateGameObjectPacket.cs
│ │ │ └── RequestOpenEditorPacket.cs
│ ├── IPacketSender.cs
│ ├── PortHelper.cs
│ ├── Events
│ │ └── ConnectionEventArgs.cs
│ ├── IClient.cs
│ ├── IPacketHandler.cs
│ ├── NetworkStatus.cs
│ ├── IPacket.cs
│ ├── PacketLifecycle.cs
│ ├── DnsUtils.cs
│ ├── IConnection.cs
│ ├── ConnectionStatistics.cs
│ └── Delegates.cs
├── Updater
│ ├── UpdateStatus.cs
│ └── UpdateFile.cs
├── Core
│ ├── ExperimentalFeatures
│ │ ├── ExperimentNamespace.cs
│ │ ├── IFlagProvider.cs
│ │ ├── ExperimentalFlagAliasAttribute.cs
│ │ ├── CommonExperiments.Flags.cs
│ │ └── IExperimentalFlag.cs
│ ├── IThreadableApplicationService.cs
│ ├── IApplicationContext`1.cs
│ └── ICommandLineOptions.cs
├── GlobalSuppressions.cs
├── Plugins
│ ├── Interfaces
│ │ ├── ILifecycleHelper.cs
│ │ └── ICommandLineHelper.cs
│ ├── PluginConfiguration.cs
│ ├── IPluginContext`1.cs
│ ├── IPluginContext.cs
│ └── IPluginBootstrapContext.cs
├── Collections
│ ├── IGameObjectLookup.cs
│ └── SanitizedValue.cs
├── BytePoint.cs
├── SharedConstants.cs
├── Config
│ ├── MetricsOptions.cs
│ ├── BankOptions.cs
│ └── SmtpSettings.cs
├── Extensions
│ ├── KeyValuePairExtensions.cs
│ └── GameObjectInfoAttribute.cs
├── Logging
│ ├── LogLevel.cs
│ └── Formatting
│ │ └── ILogFormatter.cs
├── Utilities
│ ├── Nullability.cs
│ └── VersionHelper.cs
├── Configuration
│ └── IConfigurable.cs
├── SuppressionJustifications.cs
├── Security
│ ├── ApiVisibilityAttribute.cs
│ └── ApiVisibility.cs
├── Admin
│ └── Actions
│ │ ├── KickAction.cs
│ │ ├── KillAction.cs
│ │ ├── UnbanAction.cs
│ │ ├── UnmuteAction.cs
│ │ ├── WarpMeToAction.cs
│ │ ├── WarpToMeAction.cs
│ │ └── WarpToMapAction.cs
└── Factories
│ └── IFactory.cs
├── Intersect.Network
├── IServer.cs
└── NetworkMetaStatus.cs
├── Documentation
└── Intersect Documentation.url
├── Intersect.Client.Framework
├── Content
│ ├── IAsset.cs
│ └── TextureType.cs
├── Entities
│ ├── IDash.cs
│ ├── IFriendInstance.cs
│ ├── SpriteAnimations.cs
│ ├── LabelType.cs
│ ├── IResource.cs
│ ├── IHotbarInstance.cs
│ ├── IPartyMember.cs
│ ├── Label.cs
│ ├── IStatus.cs
│ └── IAnimation.cs
├── Gwen
│ ├── Control
│ │ ├── IColorPicker.cs
│ │ ├── IColorableText.cs
│ │ ├── EventArguments
│ │ │ ├── ItemSelectedEventArgs.cs
│ │ │ └── ClickedEventArgs.cs
│ │ ├── ILabel.cs
│ │ └── Data
│ │ │ ├── ITableDataProvider.cs
│ │ │ └── ITableRowDataProvider.cs
│ ├── HSV.cs
│ ├── DragDrop
│ │ └── Package.cs
│ └── Pos.cs
├── Core
│ └── Sounds
│ │ ├── IMapSound.cs
│ │ └── ISound.cs
├── Plugins
│ └── ClientPluginEntry.cs
├── Maps
│ ├── IMapAnimation.cs
│ ├── IWeatherParticle.cs
│ ├── IActionMessage.cs
│ └── IMapGrid.cs
├── Graphics
│ ├── BoundsComparison.cs
│ ├── GameBlendModes.cs
│ └── DrawStates.cs
├── Input
│ ├── MouseButtons.cs
│ ├── KeyboardType.cs
│ └── IGameInput.cs
├── General
│ └── GameStates.cs
├── Sys
│ └── GameSystem.cs
├── Items
│ ├── IMapItemInstance.cs
│ └── IItem.cs
└── Audio
│ └── GameAudioSource.cs
├── NuGet.Config
├── Intersect.Server.Framework
└── Plugins
│ ├── ServerPluginEntry.cs
│ ├── Helpers
│ └── IServerLifecycleHelper.cs
│ └── IServerPluginContext.cs
├── .github
└── ISSUE_TEMPLATE
│ └── config.yml
├── Intersect.Tests.Client
└── Stub.cs
├── .gitattributes
├── Intersect.Tests.Editor
└── Stub.cs
├── Intersect.Tests.Network
└── Stub.cs
├── Intersect.Tests.Server
└── Stub.cs
├── Intersect.Tests.Client.Framework
└── Stub.cs
├── Intersect.Tests
└── Plugins
│ ├── manifest.lowercase.json
│ └── manifest.well-formed.json
└── AUTHORS.md
/assets/production/client/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/production/server/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/staging/client/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/staging/server/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/development/client/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/development/server/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/.name:
--------------------------------------------------------------------------------
1 | Intersect
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/.name:
--------------------------------------------------------------------------------
1 | Intersect.Examples
--------------------------------------------------------------------------------
/Intersect.Client/Icon.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Client/Icon.bmp
--------------------------------------------------------------------------------
/Intersect.Editor/DarkUI.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/DarkUI.dll
--------------------------------------------------------------------------------
/Intersect.Editor/Pngcs.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Pngcs.dll
--------------------------------------------------------------------------------
/Intersect.Editor/sqlite3.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/sqlite3.dll
--------------------------------------------------------------------------------
/assets/intersect-logo-qu.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/assets/intersect-logo-qu.bmp
--------------------------------------------------------------------------------
/assets/intersect-logo-qu.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/assets/intersect-logo-qu.ico
--------------------------------------------------------------------------------
/assets/intersect-logo-qu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/assets/intersect-logo-qu.png
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/layer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/layer.png
--------------------------------------------------------------------------------
/Intersect.Client/Resources/openal32.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Client/Resources/openal32.dll
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/layer_face.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/layer_face.png
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/layer_sel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/layer_sel.png
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/paintbrush.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/paintbrush.png
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/sqlite3x64.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/sqlite3x64.dll
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/sqlite3x86.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/sqlite3x86.dll
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/layer_hidden.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/layer_hidden.png
--------------------------------------------------------------------------------
/Intersect.Server/Resources/e_sqlite3x64.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Server/Resources/e_sqlite3x64.dll
--------------------------------------------------------------------------------
/Intersect.Server/Resources/e_sqlite3x86.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Server/Resources/e_sqlite3x86.dll
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/layer_face_sel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/layer_face_sel.png
--------------------------------------------------------------------------------
/Intersect.Server/Resources/libe_sqlite3.dylib:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Server/Resources/libe_sqlite3.dylib
--------------------------------------------------------------------------------
/Intersect.Server/Resources/libe_sqlite3_x64.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Server/Resources/libe_sqlite3_x64.so
--------------------------------------------------------------------------------
/Intersect.Server/Resources/libe_sqlite3_x86.so:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Server/Resources/libe_sqlite3_x86.so
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/intersect-logo-qu.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/intersect-logo-qu.ico
--------------------------------------------------------------------------------
/Intersect.Client/Resources/Shaders/radialgradient.xnb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Client/Resources/Shaders/radialgradient.xnb
--------------------------------------------------------------------------------
/Intersect (Core)/IO/ISaveable.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.IO
2 | {
3 |
4 | public interface ISaveable
5 | {
6 |
7 | bool Save();
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Editor/Resources/Shaders/radialgradient_editor.xnb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Intersect.Editor/Resources/Shaders/radialgradient_editor.xnb
--------------------------------------------------------------------------------
/Intersect.Network/IServer.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 |
4 | public interface IServer
5 | {
6 |
7 | bool Listen();
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Documentation/Intersect Documentation.url:
--------------------------------------------------------------------------------
1 | [{000214A0-0000-0000-C000-000000000046}]
2 | Prop3=19,11
3 | [InternetShortcut]
4 | IDList=
5 | URL=https://docs.freemmorpgmaker.com/
6 | HotKey=0
7 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/TargetType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum TargetType
4 | {
5 | Hover = 0,
6 |
7 | Selected = 1
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect (Core)/Localization/BooleanStyle.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Localization
2 | {
3 | public enum BooleanStyle
4 | {
5 | TrueFalse,
6 | YesNo,
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Content/IAsset.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Content
2 | {
3 | public interface IAsset
4 | {
5 | string Name { get; }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin.Client/Assets/join-our-discord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Examples/Intersect.Examples.Plugin.Client/Assets/join-our-discord.png
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin.ClientVB/Assets/join-our-discord.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vmfunc/Intersect-Engine/main/Examples/Intersect.Examples.Plugin.ClientVB/Assets/join-our-discord.png
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/Gender.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum Gender
5 | {
6 |
7 | Male = 0,
8 |
9 | Female
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/MapZone.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum MapZone
4 | {
5 | Normal = 0,
6 |
7 | Safe,
8 |
9 | Arena
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/Vital.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum Vital
4 | {
5 | Health = 0,
6 |
7 | Mana,
8 |
9 | VitalCount
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client/MonoGame/NativeInterop/KnownLibrary.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.MonoGame.NativeInterop
2 | {
3 | public enum KnownLibrary
4 | {
5 | OpenAL,
6 | SDL2
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/StringVariableComparator.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum StringVariableComparator
4 | {
5 | Equal = 0,
6 |
7 | Contains
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect (Core)/Models/IObject.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Models
4 | {
5 |
6 | public interface IObject
7 | {
8 |
9 | Guid Id { get; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Intersect (Core)/IO/ILoadable.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.IO
2 | {
3 |
4 | public interface ILoadable
5 | {
6 |
7 | bool Load(TFrom from = default(TFrom));
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Models/INamedObject.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Models
2 | {
3 |
4 | public interface INamedObject : IObject
5 | {
6 |
7 | string Name { get; set; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IDash.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Entities
2 | {
3 | public interface IDash
4 | {
5 | float OffsetX { get; }
6 | float OffsetY { get; }
7 | }
8 | }
--------------------------------------------------------------------------------
/Intersect.Editor/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "Intersect.Editor": {
4 | "commandName": "Project",
5 | "workingDirectory": "..\\assets\\development\\client"
6 | }
7 | }
8 | }
--------------------------------------------------------------------------------
/Intersect.Editor/FodyWeavers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/Access.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum Access
5 | {
6 |
7 | None = 0,
8 |
9 | Moderator,
10 |
11 | Admin
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Annotations/EditorFieldType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.GameObjects.Annotations
2 | {
3 | public enum EditorFieldType
4 | {
5 | Default,
6 |
7 | Pivot,
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect (Core)/IO/ISaveable.Generic.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.IO
2 | {
3 |
4 | public interface ISaveable : ISaveable
5 | {
6 |
7 | bool Save(TTo to = default(TTo));
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Localization/Localized.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Localization
4 | {
5 |
6 | [Serializable]
7 | public abstract partial class Localized
8 | {
9 |
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Server/FodyWeavers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/DamageType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum DamageType
5 | {
6 |
7 | Physical = 0,
8 |
9 | Magic,
10 |
11 | True
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Server/Database/PlayerData/Players/ISlot.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Database.PlayerData.Players
2 | {
3 |
4 | public interface ISlot
5 | {
6 |
7 | int Slot { get; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/NuGet.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/encodings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventGraphicType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventGraphicType
5 | {
6 |
7 | None = 0,
8 |
9 | Sprite,
10 |
11 | Tileset
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/GrappleOption.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum GrappleOption
4 | {
5 | MapAttribute = 0,
6 |
7 | Player,
8 |
9 | NPC,
10 |
11 | Resource
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/IColorPicker.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Gwen.Control
2 | {
3 |
4 | public interface IColorPicker
5 | {
6 |
7 | Color SelectedColor { get; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventMovementType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventMovementType
5 | {
6 |
7 | None = 0,
8 |
9 | Random,
10 |
11 | MoveRoute,
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/QuestObjective.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum QuestObjective
5 | {
6 |
7 | EventDriven = 0,
8 |
9 | GatherItems,
10 |
11 | KillNpcs
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Localization/LocaleNamespace.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Localization
4 | {
5 |
6 | [Serializable]
7 | public abstract partial class LocaleNamespace : Localized
8 | {
9 |
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Core/Sounds/IMapSound.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Core.Sounds
4 | {
5 | public interface IMapSound : ISound
6 | {
7 | void UpdatePosition(int x, int y, Guid mapId);
8 | }
9 | }
--------------------------------------------------------------------------------
/Intersect.Client/MonoGame/NativeInterop/Platform.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.MonoGame.NativeInterop
2 | {
3 | public enum Platform
4 | {
5 | Unknown,
6 | Linux,
7 | MacOS,
8 | Windows
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/SortDirection.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Web.RestApi.Payloads
2 | {
3 |
4 | public enum SortDirection
5 | {
6 |
7 | Ascending,
8 |
9 | Descending
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/ConsumableType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum ConsumableType : byte
5 | {
6 |
7 | Health = 0,
8 |
9 | Mana = 1,
10 |
11 | Experience = 2
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/VariableValue.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Web.RestApi.Payloads
2 | {
3 |
4 | public partial struct VariableValue
5 | {
6 |
7 | public dynamic Value { get; set; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventRenderLayer.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventRenderLayer
5 | {
6 |
7 | BelowPlayer = 0,
8 |
9 | SameAsPlayer,
10 |
11 | AbovePlayer
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/MapListUpdate.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum MapListUpdate
4 | {
5 | MoveItem = 0,
6 |
7 | AddFolder = 1,
8 |
9 | Rename = 2,
10 |
11 | Delete = 3
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/IGameObject.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.GameObjects
2 | {
3 |
4 | public interface IGameObject where TValue : IGameObject
5 | {
6 |
7 | TKey Id { get; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Plugins/ClientPluginEntry.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins;
2 |
3 | namespace Intersect.Client.Plugins
4 | {
5 | public abstract partial class ClientPluginEntry : PluginEntry
6 | {
7 |
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect.Server.Framework/Plugins/ServerPluginEntry.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins;
2 |
3 | namespace Intersect.Server.Plugins
4 | {
5 | public abstract partial class ServerPluginEntry : PluginEntry
6 | {
7 |
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/indexLayout.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/GuildMemberUpdateAction.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum GuildMemberUpdateAction
4 | {
5 | Invite = 0,
6 | Remove,
7 | Promote,
8 | Demote,
9 | Transfer
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/SpellPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class SpellPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/GuildRank.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct GuildRank
7 | {
8 |
9 | public int Rank { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/PasswordValidation.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Web.RestApi.Payloads
2 | {
3 |
4 | public partial struct PasswordValidation
5 | {
6 |
7 | public string Password { get; set; }
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/VariableDataType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum VariableDataType : byte
4 | {
5 |
6 | Boolean = 1,
7 |
8 | Integer,
9 |
10 | String,
11 |
12 | Number
13 |
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/IO/ISaveableProvider.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.IO
2 | {
3 |
4 | public interface ISaveableProvider
5 | {
6 |
7 | ISaveable DefaultSaveable { get; }
8 |
9 | ISaveable AsSaveable();
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/CloseBankPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class CloseBankPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/CloseShopPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class CloseShopPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/EnterGamePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class EnterGamePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/PingPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Editor
4 | {
5 |
6 | [MessagePackObject]
7 | public partial class PingPacket : IntersectPacket
8 | {
9 |
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/StopMusicPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class StopMusicPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Updater/UpdateStatus.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Updater
2 | {
3 | public enum UpdateStatus
4 | {
5 | Checking = 0,
6 | Updating = 1,
7 | Restart,
8 | Done,
9 | Error,
10 | None
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/LevelChange.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct LevelChange
7 | {
8 |
9 | public int Level { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/NameChange.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct NameChange
7 | {
8 |
9 | public string Name { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/SpellInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct SpellInfo
7 | {
8 |
9 | public Guid SpellId { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ExperimentalFeatures/ExperimentNamespace.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Core.ExperimentalFeatures
4 | {
5 |
6 | [Serializable]
7 | public abstract partial class ExperimentNamespace
8 | {
9 |
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/NpcMovement.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum NpcMovement
5 | {
6 |
7 | MoveRandomly = 0,
8 |
9 | TurnRandomly,
10 |
11 | StandStill,
12 |
13 | Static
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/SpellType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum SpellType
4 | {
5 | CombatSpell = 0,
6 |
7 | Warp = 1,
8 |
9 | WarpTo = 2,
10 |
11 | Dash = 3,
12 |
13 | Event = 4
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/AcceptTradePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class AcceptTradePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/CloseBagPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 |
6 | [MessagePackObject]
7 | public partial class CloseBagPacket : IntersectPacket
8 | {
9 |
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/PartyLeavePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class PartyLeavePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/AdminPanelPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class AdminPanelPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/HidePicturePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class HidePicturePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/JoinGamePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class JoinGamePacket : AbstractTimedPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/StopSoundsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class StopSoundsPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/HSV.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Gwen
2 | {
3 |
4 | public partial struct Hsv
5 | {
6 |
7 | public float H;
8 |
9 | public float s;
10 |
11 | public float V;
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Maps/IMapAnimation.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Entities;
2 | using System;
3 |
4 | namespace Intersect.Client.Framework.Maps
5 | {
6 | public interface IMapAnimation : IAnimation
7 | {
8 | Guid Id { get; }
9 | }
10 | }
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/ClassChange.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct ClassChange
7 | {
8 |
9 | public Guid ClassId { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/indexLayout.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventTrigger.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventTrigger
5 | {
6 |
7 | ActionButton = 0,
8 |
9 | PlayerCollide,
10 |
11 | Autorun,
12 |
13 | PlayerBump,
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/NpcAggression.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum NpcAggression
4 | {
5 | Aggressive,
6 |
7 | AttackWhenAttacked,
8 |
9 | AttackOnSight,
10 |
11 | Neutral,
12 |
13 | Guard,
14 | }
15 | }
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/CloseCraftingPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class CloseCraftingPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/DeclineTradePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class DeclineTradePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/NewCharacterPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class NewCharacterPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/RequestFriendsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class RequestFriendsPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/EnteringGamePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class EnteringGamePacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IFriendInstance.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Entities
2 | {
3 | public interface IFriendInstance
4 | {
5 | string Map { get; set; }
6 | string Name { get; set; }
7 | bool Online { get; set; }
8 | }
9 | }
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Graphics/BoundsComparison.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Graphics
2 | {
3 | public enum BoundsComparison
4 | {
5 | Width,
6 |
7 | Height,
8 |
9 | Dimensions,
10 |
11 | Area,
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Input/MouseButtons.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Input
2 | {
3 | public enum MouseButtons
4 | {
5 |
6 | None = -1,
7 |
8 | Left = 0,
9 |
10 | Right,
11 |
12 | Middle
13 |
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/WarpDirection.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum WarpDirection
5 | {
6 |
7 | Retain = 0,
8 |
9 | Up,
10 |
11 | Down,
12 |
13 | Left,
14 |
15 | Right
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/IPacketSender.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Core;
2 |
3 | namespace Intersect.Network
4 | {
5 | public interface IPacketSender
6 | {
7 | IApplicationContext ApplicationContext { get; }
8 |
9 | bool Send(IPacket packet);
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/OpenAdminWindowPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class OpenAdminWindowPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/IColorableText.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Gwen.Control
2 | {
3 | public interface IColorableText
4 | {
5 | Color TextColor { get; set; }
6 |
7 | Color TextColorOverride { get; set; }
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/IAppConfigurationProvider.cs:
--------------------------------------------------------------------------------
1 | using Owin;
2 |
3 | namespace Intersect.Server.Web.RestApi
4 | {
5 |
6 | internal interface IAppConfigurationProvider
7 | {
8 |
9 | void Configure(IAppBuilder appBuilder);
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/ChatboxChannel.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum ChatboxChannel
5 | {
6 |
7 | Player = 0,
8 |
9 | Local,
10 |
11 | Global,
12 |
13 | Party,
14 |
15 | Guild
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EntityType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum EntityType
4 | {
5 | GlobalEntity = 0,
6 |
7 | Player = 1,
8 |
9 | Resource = 2,
10 |
11 | Projectile = 3,
12 |
13 | Event = 4
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/NpcSpawnDirection.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum NpcSpawnDirection
5 | {
6 |
7 | Random = 0,
8 |
9 | Up,
10 |
11 | Down,
12 |
13 | Left,
14 |
15 | Right
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/Stat.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum Stat
4 | {
5 | Attack = 0,
6 |
7 | AbilityPower,
8 |
9 | Defense,
10 |
11 | MagicResist,
12 |
13 | Speed,
14 |
15 | StatCount
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/CharacterCreationPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class CharacterCreationPacket : IntersectPacket
7 | {
8 |
9 | }
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | // This file is used by Code Analysis to maintain SuppressMessage
2 | // attributes that are applied to this project.
3 | // Project-level suppressions either have no target or are given
4 | // a specific target and scoped to a namespace, type, member, etc.
5 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/Interfaces/ILifecycleHelper.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Plugins.Interfaces
2 | {
3 | ///
4 | /// Defines the API for accessing lifecycle information and events.
5 | ///
6 | public interface ILifecycleHelper
7 | {
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Core/Sounds/ISound.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Core.Sounds
2 | {
3 | public interface ISound
4 | {
5 | bool Loaded { get; set; }
6 | bool Loop { get; set; }
7 |
8 | void Stop();
9 | bool Update();
10 | }
11 | }
--------------------------------------------------------------------------------
/Intersect.Server/Database/ISeedableContext.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore;
2 |
3 | namespace Intersect.Server.Database
4 | {
5 |
6 | public interface ISeedableContext
7 | {
8 |
9 | DbSet GetDbSet() where TType : class;
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/PagingInfo.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Web.RestApi.Payloads
2 | {
3 |
4 | public partial struct PagingInfo
5 | {
6 |
7 | public int Page { get; set; }
8 |
9 | public int Count { get; set; }
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/assets/.gitignore:
--------------------------------------------------------------------------------
1 | # Make sure we keep the default folders to prevent IDE errors when they do not exist
2 | !/development
3 | !/development/*/
4 | !/development/*/.gitkeep
5 | !/production/
6 | !/production/*/
7 | !/production/*/.gitkeep
8 | !/staging/
9 | !/staging/*/
10 | !/staging/*/.gitkeep
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/misc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Intersect (Core)/Collections/IGameObjectLookup.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Models;
4 |
5 | namespace Intersect.Collections
6 | {
7 |
8 | public interface IGameObjectLookup : ILookup where TValue : INamedObject
9 | {
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/SpriteAnimations.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Entities
2 | {
3 | public enum SpriteAnimations
4 | {
5 | Normal = 0,
6 | Idle,
7 | Attack,
8 | Shoot,
9 | Cast,
10 | Weapon,
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Input/KeyboardType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Input
2 | {
3 | public enum KeyboardType
4 | {
5 |
6 | Normal,
7 |
8 | Password,
9 |
10 | Email,
11 |
12 | Numberic,
13 |
14 | Pin
15 |
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Maps/IWeatherParticle.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Maps
2 | {
3 | public interface IWeatherParticle
4 | {
5 | float X { get; set; }
6 | float Y { get; set; }
7 |
8 | void Dispose();
9 | void Update();
10 | }
11 | }
--------------------------------------------------------------------------------
/Intersect.Server/Core/Services/IConsoleService.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Core;
2 |
3 | namespace Intersect.Server.Core.Services
4 | {
5 | internal interface IConsoleService : IThreadableApplicationService
6 | {
7 |
8 | void Wait(bool doNotContinue = false);
9 |
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Server/Maps/MapNpcSpawn.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Entities;
2 |
3 | namespace Intersect.Server.Maps
4 | {
5 | public partial class MapNpcSpawn
6 | {
7 | public Npc Entity { get; set; }
8 |
9 | public long RespawnTime { get; set; } = -1;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventMovementSpeed.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventMovementSpeed
5 | {
6 |
7 | Slowest = 0,
8 |
9 | Slower,
10 |
11 | Normal,
12 |
13 | Faster,
14 |
15 | Fastest
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/LabelType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Entities
2 | {
3 | public enum LabelType
4 | {
5 |
6 | Header = 0,
7 |
8 | Footer,
9 |
10 | Name,
11 |
12 | ChatBubble,
13 |
14 | Guild
15 |
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/General/GameStates.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.General
2 | {
3 |
4 | public enum GameStates
5 | {
6 |
7 | Intro = 0,
8 |
9 | Menu,
10 |
11 | Loading,
12 |
13 | InGame,
14 |
15 | Error
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Configuration/NetworkTypes.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Configuration
4 | {
5 | [Flags]
6 | public enum NetworkTypes
7 | {
8 | Loopback = 1,
9 | Subnet = 2,
10 | PrivateNetwork = 4
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/EventMovementFrequency.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 |
4 | public enum EventMovementFrequency
5 | {
6 |
7 | Lowest = 0,
8 |
9 | Lower,
10 |
11 | Normal,
12 |
13 | Higher,
14 |
15 | Highest
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Maps/MapList/MapListItem.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.GameObjects.Maps.MapList
2 | {
3 |
4 | public partial class MapListItem
5 | {
6 |
7 | public string Name = "";
8 |
9 | public int Type = -1; //0 for directory, 1 for map
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Sys/GameSystem.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Sys
2 | {
3 |
4 | public abstract partial class GameSystem
5 | {
6 |
7 | public abstract void Log(string msg);
8 |
9 | public abstract void LogError(string error);
10 |
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/SpellTargetType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum SpellTargetType
4 | {
5 | Self = 0,
6 |
7 | Single = 1,
8 |
9 | AoE = 2,
10 |
11 | Projectile = 3,
12 |
13 | OnHit = 4,
14 |
15 | Trap = 5
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Drop.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.GameObjects
4 | {
5 | public partial class Drop
6 | {
7 | public double Chance { get; set; }
8 |
9 | public Guid ItemId { get; set; }
10 |
11 | public int Quantity { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IResource.cs:
--------------------------------------------------------------------------------
1 | using Intersect.GameObjects;
2 |
3 | namespace Intersect.Client.Framework.Entities
4 | {
5 | public interface IResource : IEntity
6 | {
7 | ResourceBase BaseResource { get; }
8 |
9 | bool IsDepleted { get; }
10 |
11 | }
12 | }
--------------------------------------------------------------------------------
/Intersect (Core)/Network/PortHelper.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 |
4 | public static partial class PortHelper
5 | {
6 |
7 | public static bool IsValidPort(ulong port)
8 | {
9 | return 0 < port && port <= ushort.MaxValue;
10 | }
11 |
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/TypewriterBehavior.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Intersect.Enums
8 | {
9 | public enum TypewriterBehavior
10 | {
11 | Off,
12 | Word,
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/VariableComparator.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum VariableComparator
4 | {
5 |
6 | Equal = 0,
7 |
8 | GreaterOrEqual,
9 |
10 | LesserOrEqual,
11 |
12 | Greater,
13 |
14 | Less,
15 |
16 | NotEqual
17 |
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/PingPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class PingPacket : AbstractTimedPacket
7 | {
8 | [Key(3)]
9 | public bool Responding { get; set; }
10 | }
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Events/ConnectionEventArgs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Network.Events
4 | {
5 | public partial class ConnectionEventArgs : EventArgs
6 | {
7 | public NetworkStatus NetworkStatus { get; set; }
8 |
9 | public IConnection Connection { get; set; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IHotbarInstance.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Entities
4 | {
5 | public interface IHotbarInstance
6 | {
7 | Guid BagId { get; set; }
8 | Guid ItemOrSpellId { get; set; }
9 | int[] PreferredStatBuffs { get; set; }
10 | }
11 | }
--------------------------------------------------------------------------------
/Intersect (Core)/BytePoint.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect
2 | {
3 |
4 | public partial struct BytePoint
5 | {
6 |
7 | public byte X;
8 |
9 | public byte Y;
10 |
11 | public BytePoint(byte x, byte y)
12 | {
13 | X = x;
14 | Y = y;
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/ItemType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum ItemType
4 | {
5 | None = 0,
6 |
7 | Equipment = 1,
8 |
9 | Consumable = 2,
10 |
11 | Currency = 3,
12 |
13 | Spell = 4,
14 |
15 | Event = 5,
16 |
17 | Bag = 6
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Items/IMapItemInstance.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Items
4 | {
5 | public interface IMapItemInstance : IItem
6 | {
7 | int TileIndex { get; }
8 | Guid Id { get; set; }
9 | int X { get; set; }
10 | int Y { get; set; }
11 | }
12 | }
--------------------------------------------------------------------------------
/Intersect (Core)/Models/IFolderable.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Models
2 | {
3 |
4 | public interface IFolderable
5 | {
6 |
7 | ///
8 | /// Used to group editor items together into folders with the same name
9 | ///
10 | string Folder { get; set; }
11 |
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Graphics/GameBlendModes.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Graphics
2 | {
3 |
4 | public enum GameBlendModes
5 | {
6 |
7 | Add = 0,
8 |
9 | Alpha,
10 |
11 | Multiply,
12 |
13 | None,
14 |
15 | Opaque,
16 |
17 | Cutout
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Input/IGameInput.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.GenericClasses;
2 |
3 | namespace Intersect.Client.Framework.Input
4 | {
5 | public interface IGameInput
6 | {
7 | Pointf MousePosition { get; }
8 | bool KeyDown(Keys key);
9 | bool MouseButtonDown(MouseButtons mb);
10 | }
11 | }
--------------------------------------------------------------------------------
/Intersect.Client/FodyWeavers.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | SDL2.dll
7 | libopenal.so.1
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Services/ILogicService.cs:
--------------------------------------------------------------------------------
1 | using Amib.Threading;
2 | using Intersect.Core;
3 |
4 | namespace Intersect.Server.Core.Services
5 | {
6 | internal interface ILogicService : IThreadableApplicationService
7 | {
8 | object LogicLock { get; }
9 |
10 | SmartThreadPool LogicPool { get; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Graphics/DrawStates.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Graphics
2 | {
3 | public enum DrawStates
4 | {
5 | GroundLayers = 0,
6 |
7 | BelowPlayer,
8 |
9 | AbovePlayer,
10 |
11 | FringeLayers,
12 |
13 | BeforeEntity,
14 |
15 | AfterEntity,
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/UserInfo.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Web.RestApi.Payloads
2 | {
3 |
4 | public partial struct UserInfo
5 | {
6 |
7 | public string Username { get; set; }
8 |
9 | public string Password { get; set; }
10 |
11 | public string Email { get; set; }
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/ItemEffect.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum ItemEffect : byte
4 | {
5 | None = 0,
6 |
7 | CooldownReduction = 1,
8 |
9 | Lifesteal = 2,
10 |
11 | Tenacity = 3,
12 |
13 | Luck = 4,
14 |
15 | EXP = 5,
16 |
17 | Manasteal = 6,
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Server/Database/PlayerData/Players/IPlayerOwned.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Server.Entities;
4 |
5 | namespace Intersect.Server.Database.PlayerData.Players
6 | {
7 |
8 | public interface IPlayerOwned
9 | {
10 |
11 | Player Player { get; }
12 |
13 | Guid PlayerId { get; }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Server/Maps/MapResourceSpawn.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Entities;
2 |
3 | namespace Intersect.Server.Maps
4 | {
5 |
6 | public partial class MapResourceSpawn
7 | {
8 |
9 | public Resource Entity;
10 |
11 | public int EntityIndex = -1;
12 |
13 | public long RespawnTime = -1;
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/Direction.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum Direction
4 | {
5 | None = -1,
6 |
7 | Up,
8 |
9 | Down,
10 |
11 | Left,
12 |
13 | Right,
14 |
15 | UpLeft,
16 |
17 | UpRight,
18 |
19 | DownRight,
20 |
21 | DownLeft
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
1 | blank_issues_enabled: false
2 | contact_links:
3 | - name: Ascension Game Dev
4 | url: https://ascensiongamedev.com
5 | about: Please ask and answer questions on our public forum.
6 | - name: Community Discord
7 | url: https://discord.gg/Ggt3KJV
8 | about: Feel free to chat or also find support in our Discord community.
9 |
--------------------------------------------------------------------------------
/.idea/.idea.Intersect/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Rider ignored files
5 | /contentModel.xml
6 | /projectSettingsUpdater.xml
7 | /.idea.Intersect.iml
8 | /modules.xml
9 | # Datasource local storage ignored files
10 | /dataSources/
11 | /dataSources.local.xml
12 | # Editor-based HTTP Client requests
13 | /httpRequests/
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/IClient.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 |
4 | public interface IClient : INetwork
5 | {
6 | IConnection Connection { get; }
7 |
8 | bool IsConnected { get; }
9 |
10 | bool IsServerOnline { get; }
11 |
12 | int Ping { get; }
13 |
14 | bool Connect();
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Audio/GameAudioSource.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Content;
2 |
3 | namespace Intersect.Client.Framework.Audio
4 | {
5 |
6 | public abstract partial class GameAudioSource : IAsset
7 | {
8 | public string Name { get; set; }
9 |
10 | public abstract GameAudioInstance CreateInstance();
11 |
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect.Editor/GlobalSuppressions.cs:
--------------------------------------------------------------------------------
1 | [assembly:
2 | System.Diagnostics.CodeAnalysis.SuppressMessage(
3 | "Style", "IDE1005:Delegate invocation can be simplified.",
4 | Justification = "if-null is more readable for newer programmers.", Scope = "member",
5 | Target = "~M:Intersect_Editor.Classes.PacketHandler.HandleGameObject(System.Byte[])"
6 | )]
7 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/ItemInfo.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Web.RestApi.Payloads
4 | {
5 |
6 | public partial struct ItemInfo
7 | {
8 |
9 | public Guid ItemId { get; set; }
10 |
11 | public int Quantity { get; set; }
12 |
13 | public bool BankOverflow { get; set; }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IPartyMember.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Entities
4 | {
5 | public interface IPartyMember
6 | {
7 | Guid Id { get; set; }
8 | int Level { get; set; }
9 | int[] MaxVital { get; set; }
10 | string Name { get; set; }
11 | int[] Vital { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/Intersect (Core)/SharedConstants.cs:
--------------------------------------------------------------------------------
1 | using System.Text;
2 |
3 | namespace Intersect
4 | {
5 |
6 | public static partial class SharedConstants
7 | {
8 |
9 | public static readonly string VersionName = "Beta Eridani (201802251101-05)";
10 |
11 | public static readonly byte[] VersionData = Encoding.UTF8.GetBytes(VersionName);
12 |
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Client/Entities/FriendInstance.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Entities;
2 |
3 | namespace Intersect.Client.Entities
4 | {
5 | public partial class FriendInstance : IFriendInstance
6 | {
7 |
8 | public string Map { get; set; }
9 |
10 | public string Name { get; set; }
11 |
12 | public bool Online { get; set; } = false;
13 |
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Network/NetworkMetaStatus.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 |
4 | public enum NetworkMetaStatus
5 | {
6 |
7 | Unknown = 0,
8 |
9 | ConnectionEstablished = 1,
10 |
11 | HandshakeRequested = 2,
12 |
13 | HandshakeReceived = 4,
14 |
15 | HandshakeCompleted = 8,
16 |
17 | Connected = 16
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Server/Database/ContextProvider.Locking.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Database
2 | {
3 | public sealed partial class ContextProvider
4 | {
5 | private partial class LockProvider where TContext : IntersectDbContext, UContext
6 | {
7 | public static readonly object Lock = new object();
8 | }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/Intersect.Server/Maps/MapItemSpawn.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Maps
4 | {
5 |
6 | public partial class MapItemSpawn
7 | {
8 | public Guid Id { get; } = Guid.NewGuid();
9 |
10 | public int AttributeSpawnX = -1;
11 |
12 | public int AttributeSpawnY = -1;
13 |
14 | public long RespawnTime = -1;
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Examples/.idea/.idea.Intersect.Examples/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Rider ignored files
5 | /contentModel.xml
6 | /projectSettingsUpdater.xml
7 | /.idea.Intersect.Examples.iml
8 | /modules.xml
9 | # Datasource local storage ignored files
10 | /dataSources/
11 | /dataSources.local.xml
12 | # Editor-based HTTP Client requests
13 | /httpRequests/
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/IPacketHandler.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 | public interface IPacketHandler
4 | {
5 | bool Handle(IPacketSender packetSender, IPacket packet);
6 | }
7 |
8 | public interface IPacketHandler : IPacketHandler where TPacket : IPacket
9 | {
10 | bool Handle(IPacketSender packetSender, TPacket packet);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Maps/MapResourceSpawn.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.GameObjects.Maps
4 | {
5 |
6 | public partial class ResourceSpawn
7 | {
8 | public Guid Id { get; set; } = Guid.NewGuid();
9 |
10 | public Guid ResourceId;
11 |
12 | public byte X;
13 |
14 | public byte Y;
15 |
16 | public byte Z;
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Collections/SanitizedValue.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Collections
2 | {
3 |
4 | public partial struct SanitizedValue
5 | {
6 |
7 | public T Before { get; }
8 |
9 | public T After { get; }
10 |
11 | public SanitizedValue(T before, T after)
12 | {
13 | Before = before;
14 | After = after;
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/NetworkStatus.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 | public enum NetworkStatus
4 | {
5 |
6 | Unknown = 0,
7 |
8 | Connecting,
9 |
10 | Online,
11 |
12 | Offline,
13 |
14 | Failed,
15 |
16 | VersionMismatch,
17 |
18 | ServerFull,
19 |
20 | HandshakeFailure,
21 |
22 | Quitting,
23 |
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect.Client/Entities/Events/Hold.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Entities.Events
4 | {
5 |
6 | public partial class Hold
7 | {
8 |
9 | public Guid EventId;
10 |
11 | public Guid MapId;
12 |
13 | public Hold(Guid eventId, Guid mapId)
14 | {
15 | EventId = eventId;
16 | MapId = mapId;
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Config/MetricsOptions.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Config
2 | {
3 | ///
4 | /// Contains configurable options pertaining to stat/metrics collecting
5 | ///
6 | public partial class MetricsOptions
7 | {
8 | ///
9 | /// Track game performance metrics
10 | ///
11 | public bool Enable { get; set; } = true;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Annotations/EditorTimeAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.GameObjects.Annotations
4 | {
5 | [AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
6 | public class EditorTimeAttribute : EditorFormattedAttribute
7 | {
8 | public EditorTimeAttribute() : base("FormatTimeMilliseconds")
9 | {
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Maps/MapTile.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Newtonsoft.Json;
4 |
5 | namespace Intersect.GameObjects.Maps
6 | {
7 |
8 | public partial struct Tile
9 | {
10 |
11 | public Guid TilesetId;
12 |
13 | public int X;
14 |
15 | public int Y;
16 |
17 | public byte Autotile;
18 |
19 | [JsonIgnore] public object TilesetTex;
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Server.Framework/Plugins/Helpers/IServerLifecycleHelper.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins.Interfaces;
2 |
3 | namespace Intersect.Server.Plugins.Helpers
4 | {
5 | ///
6 | /// Defines the API for accessing server lifecycle information and events.
7 | ///
8 | ///
9 | public interface IServerLifecycleHelper : ILifecycleHelper
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Server.Framework/Plugins/IServerPluginContext.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins;
2 | using Intersect.Server.Plugins.Helpers;
3 |
4 | namespace Intersect.Server.Plugins
5 | {
6 | ///
7 | /// Declares the plugin API surface for the Intersect server
8 | ///
9 | public interface IServerPluginContext : IPluginContext
10 | {
11 |
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Extensions/KeyValuePairExtensions.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Intersect.Extensions
4 | {
5 | public static partial class KeyValuePairExtensions
6 | {
7 | public static void Deconstruct(this KeyValuePair pair, out TKey key, out TValue val)
8 | {
9 | key = pair.Key;
10 | val = pair.Value;
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Logging/LogLevel.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Logging
2 | {
3 |
4 | public enum LogLevel : byte
5 | {
6 |
7 | None = 0,
8 |
9 | Error = 0x20,
10 |
11 | Warn = 0x40,
12 |
13 | Info = 0x60,
14 |
15 | Trace = 0x80,
16 |
17 | Verbose = 0xA0,
18 |
19 | Debug = 0xC0,
20 |
21 | Diagnostic = 0xE0,
22 |
23 | All = 0xFF
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/GuildLeavePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class GuildLeavePacket : IntersectPacket
7 | {
8 | ///
9 | /// Parameterless Constructor for MessagePack
10 | ///
11 | public GuildLeavePacket()
12 | {
13 |
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect.Server/Entities/Label.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 |
3 | namespace Intersect.Server.Entities
4 | {
5 |
6 | public partial struct Label
7 | {
8 |
9 | [JsonProperty("Label")] public string Text;
10 |
11 | public Color Color;
12 |
13 | public Label(string label, Color color)
14 | {
15 | Text = label;
16 | Color = color;
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/RequestGuildPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class RequestGuildPacket : IntersectPacket
7 | {
8 | ///
9 | /// Parameterless Constructor for MessagePack
10 | ///
11 | public RequestGuildPacket()
12 | {
13 |
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/CommandParsing/Arguments/HelpArgument.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Localization;
2 |
3 | namespace Intersect.Server.Core.CommandParsing.Arguments
4 | {
5 |
6 | public partial class HelpArgument : CommandArgument
7 | {
8 |
9 | public HelpArgument() : base(Strings.Commands.Arguments.Help)
10 | {
11 | }
12 |
13 | public override bool IsFlag => true;
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Logging/IntersectLoggerFactory.cs:
--------------------------------------------------------------------------------
1 |
2 | using Microsoft.Owin.Logging;
3 |
4 | namespace Intersect.Server.Web.RestApi.Logging
5 | {
6 |
7 | internal sealed partial class IntersectLoggerFactory : ILoggerFactory
8 | {
9 |
10 | ///
11 | public ILogger Create(string name)
12 | {
13 | return new IntersectLogger(name);
14 | }
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/AdminChange.cs:
--------------------------------------------------------------------------------
1 | using System.ComponentModel.DataAnnotations.Schema;
2 |
3 | using Newtonsoft.Json;
4 |
5 | namespace Intersect.Server.Web.RestApi.Payloads
6 | {
7 |
8 | public partial struct AdminChange
9 | {
10 |
11 | [JsonIgnore, NotMapped]
12 | public bool IsValid => !string.IsNullOrWhiteSpace(New);
13 |
14 | public string New { get; set; }
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Intersect (Core)/Utilities/Nullability.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Utilities
4 | {
5 |
6 | public static partial class Nullability
7 | {
8 |
9 | public static T IsNotNull(this T value)
10 | {
11 | if (value == null)
12 | {
13 | throw new InvalidOperationException();
14 | }
15 |
16 | return value;
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/DragDrop/Package.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Gwen.Control;
2 |
3 | namespace Intersect.Client.Framework.Gwen.DragDrop
4 | {
5 |
6 | public partial class Package
7 | {
8 |
9 | public Base DrawControl;
10 |
11 | public Point HoldOffset;
12 |
13 | public bool IsDraggable;
14 |
15 | public string Name;
16 |
17 | public object UserData;
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Client/Interface/Game/DescriptionWindows/Components/DividerComponent.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Gwen.Control;
2 |
3 | namespace Intersect.Client.Interface.Game.DescriptionWindows.Components
4 | {
5 | public partial class DividerComponent : ComponentBase
6 | {
7 | public DividerComponent(Base parent, string name) : base(parent, name)
8 | {
9 | GenerateComponents();
10 | }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Intersect.Tests.Client/Stub.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Utilities;
2 |
3 | using NUnit.Framework;
4 |
5 | namespace Intersect.Tests.Client
6 | {
7 |
8 | [TestFixture]
9 | public partial class Stub
10 | {
11 |
12 | [Test]
13 | public void TestStub()
14 | {
15 | // Needed so NUnit doesn't return -2
16 | Assert.AreEqual(0, MathHelper.Lerp(0, 0, 0));
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/GuildInviteAcceptPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class GuildInviteAcceptPacket : IntersectPacket
7 | {
8 | ///
9 | /// Parameterless Constructor for MessagePack
10 | ///
11 | public GuildInviteAcceptPacket()
12 | {
13 |
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ExperimentalFeatures/IFlagProvider.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Core.ExperimentalFeatures
4 | {
5 |
6 | public interface IFlagProvider
7 | {
8 |
9 | bool IsEnabled(Guid flagId);
10 |
11 | bool IsEnabled(string flagName);
12 |
13 | bool TryGet(Guid flagId, out IExperimentalFlag flag);
14 |
15 | bool TryGet(string flagName, out IExperimentalFlag flag);
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/MapAttribute.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum MapAttribute : byte
4 | {
5 | Walkable = 0,
6 |
7 | Blocked,
8 |
9 | Item,
10 |
11 | ZDimension,
12 |
13 | NpcAvoid,
14 |
15 | Warp,
16 |
17 | Sound,
18 |
19 | Resource,
20 |
21 | Animation,
22 |
23 | GrappleStone,
24 |
25 | Slide,
26 |
27 | Critter
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/GuildInviteDeclinePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class GuildInviteDeclinePacket : IntersectPacket
7 | {
8 | ///
9 | /// Parameterless Constructor for MessagePack
10 | ///
11 | public GuildInviteDeclinePacket()
12 | {
13 |
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Maps/IActionMessage.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Maps
2 | {
3 | public interface IActionMessage
4 | {
5 | Color Color { get; set; }
6 | IMapInstance Map { get; set; }
7 | string Msg { get; set; }
8 | long TransmissionTimer { get; set; }
9 | int X { get; set; }
10 | long XOffset { get; set; }
11 | int Y { get; set; }
12 |
13 | void TryRemove();
14 | }
15 | }
--------------------------------------------------------------------------------
/Intersect.Tests.Editor/Stub.cs:
--------------------------------------------------------------------------------
1 | using NUnit.Framework;
2 |
3 | namespace Intersect.Tests.Editor
4 | {
5 |
6 | [TestFixture]
7 | public partial class Stub
8 | {
9 |
10 | [Test]
11 | public void TestStub()
12 | {
13 | // Needed so NUnit doesn't return -2
14 | // TODO: Remove this when there are actual tests in this assembly
15 | Assert.AreEqual(0, 0);
16 | }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Tests.Network/Stub.cs:
--------------------------------------------------------------------------------
1 | using NUnit.Framework;
2 |
3 | namespace Intersect.Tests.Network
4 | {
5 |
6 | [TestFixture]
7 | public partial class Stub
8 | {
9 |
10 | [Test]
11 | public void TestStub()
12 | {
13 | // Needed so NUnit doesn't return -2
14 | // TODO: Remove this when there are actual tests in this assembly
15 | Assert.AreEqual(0, 0);
16 | }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Tests.Server/Stub.cs:
--------------------------------------------------------------------------------
1 | using NUnit.Framework;
2 |
3 | namespace Intersect.Tests.Server
4 | {
5 |
6 | [TestFixture]
7 | public partial class Stub
8 | {
9 |
10 | [Test]
11 | public void TestStub()
12 | {
13 | // Needed so NUnit doesn't return -2
14 | // TODO: Remove this when there are actual tests in this assembly
15 | Assert.AreEqual(0, 0);
16 | }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/VariableType.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | // Should properly separate static value, player & global vars into a separate enum.
4 | // But technical debt :/
5 | // Crying as I add in Guild variables.. don't hate me :(
6 |
7 | public enum VariableType
8 | {
9 |
10 | PlayerVariable = 0,
11 |
12 | ServerVariable,
13 |
14 | GuildVariable,
15 |
16 | UserVariable,
17 |
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/PluginConfiguration.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 |
3 | namespace Intersect.Plugins
4 | {
5 | ///
6 | /// The basic plugin configuration class.
7 | ///
8 | public partial class PluginConfiguration
9 | {
10 | ///
11 | /// If this plugin is enabled or not.
12 | ///
13 | [JsonProperty]
14 | public bool IsEnabled { get; internal set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect (Core)/Logging/Formatting/ILogFormatter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Logging.Formatting
4 | {
5 |
6 | public interface ILogFormatter
7 | {
8 |
9 | string Format(
10 | LogConfiguration configuration,
11 | LogLevel logLevel,
12 | DateTime dateTime,
13 | Exception exception,
14 | string message,
15 | params object[] args
16 | );
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/IPluginContext`1.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Plugins
2 | {
3 | ///
4 | /// Defines the API of the during application runtime.
5 | ///
6 | /// a subtype
7 | public interface IPluginContext : IPluginContext
8 | where TPluginContext : IPluginContext
9 | {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/Label.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 |
3 | namespace Intersect.Client.Framework.Entities
4 | {
5 |
6 | public partial class Label
7 | {
8 |
9 | [JsonProperty("Label")] public string Text { get; set; }
10 |
11 | public Color Color { get; set; }
12 |
13 | public Label(string label, Color color)
14 | {
15 | Text = label;
16 | Color = color;
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/HotbarSwapPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class HotbarSwapPacket : SlotSwapPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public HotbarSwapPacket() : base(0,0)
10 | {
11 | }
12 |
13 | public HotbarSwapPacket(int slot1, int slot2) : base(slot1, slot2) { }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SwapSpellsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class SwapSpellsPacket : SlotSwapPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SwapSpellsPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public SwapSpellsPacket(int slot1, int slot2) : base(slot1, slot2) { }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Tests.Client.Framework/Stub.cs:
--------------------------------------------------------------------------------
1 | using NUnit.Framework;
2 |
3 | namespace Intersect.Tests.Client.Framework
4 | {
5 |
6 | [TestFixture]
7 | public partial class Stub
8 | {
9 |
10 | [Test]
11 | public void TestStub()
12 | {
13 | // Needed so NUnit doesn't return -2
14 | // TODO: Remove this when there are actual tests in this assembly
15 | Assert.AreEqual(0, 0);
16 | }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/20191030214333_PlayerUpgrades_Labels.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations
4 | {
5 |
6 | public partial class PlayerUpgrades_Labels : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | }
12 |
13 | protected override void Down(MigrationBuilder migrationBuilder)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/20220331140427_GuildBankMaxSlotsMigration.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations
4 | {
5 | public partial class GuildBankMaxSlotsMigration : Migration
6 | {
7 | protected override void Up(MigrationBuilder migrationBuilder)
8 | {
9 |
10 | }
11 |
12 | protected override void Down(MigrationBuilder migrationBuilder)
13 | {
14 |
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/IThreadableApplicationService.cs:
--------------------------------------------------------------------------------
1 |
2 | using System.Threading;
3 |
4 | namespace Intersect.Core
5 | {
6 | ///
7 | /// Declares the API surface for application services that have their own thread.
8 | ///
9 | public interface IThreadableApplicationService : IApplicationService
10 | {
11 | ///
12 | /// The thread for this service.
13 | ///
14 | Thread Thread { get; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SwapBagItemsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class SwapBagItemsPacket : SlotSwapPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SwapBagItemsPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public SwapBagItemsPacket(int slot1, int slot2) : base(slot1, slot2) { }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SwapInvItemsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class SwapInvItemsPacket : SlotSwapPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SwapInvItemsPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public SwapInvItemsPacket(int slot1, int slot2) : base(slot1, slot2) { }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/NpcEntityPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class NpcEntityPacket : EntityPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public NpcEntityPacket()
11 | {
12 | }
13 |
14 |
15 | [Key(24)]
16 | public NpcAggression Aggression { get; set; }
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Server/Plugins/Helpers/ServerLifecycleHelper.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins.Helpers;
2 |
3 | namespace Intersect.Server.Plugins.Helpers
4 | {
5 | ///
6 | internal sealed partial class ServerLifecycleHelper : ContextHelper, IServerLifecycleHelper
7 | {
8 | ///
9 | public ServerLifecycleHelper(IServerPluginContext context) : base(context)
10 | {
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SwapBankItemsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class SwapBankItemsPacket : SlotSwapPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SwapBankItemsPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public SwapBankItemsPacket(int slot1, int slot2) : base(slot1, slot2) { }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/IPluginContext.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins.Interfaces;
2 |
3 | namespace Intersect.Plugins
4 | {
5 | ///
6 | /// Defines the API of the plugin context during application runtime.
7 | ///
8 | public interface IPluginContext : IPluginBaseContext
9 | {
10 | ///
11 | /// The of the current plugin.
12 | ///
13 | ILifecycleHelper Lifecycle { get; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20211031200145_FixQuestTaskCompletionEvents.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 | public partial class FixQuestTaskCompletionEvents : Migration
6 | {
7 | protected override void Up(MigrationBuilder migrationBuilder)
8 | {
9 |
10 | }
11 |
12 | protected override void Down(MigrationBuilder migrationBuilder)
13 | {
14 |
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/IPacket.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | using Intersect.Collections;
5 |
6 | namespace Intersect.Network
7 | {
8 |
9 | public interface IPacket : IDisposable
10 | {
11 |
12 | byte[] Data { get; }
13 |
14 | bool IsValid { get; }
15 |
16 | long ReceiveTime { get; set; }
17 |
18 | long ProcessTime { get; set; }
19 |
20 | Dictionary> Sanitize();
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/BuyItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class BuyItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public BuyItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public BuyItemPacket(int slot, int quantity) : base(slot, quantity)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/DropItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class DropItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public DropItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public DropItemPacket(int slot, int quantity) : base(slot, quantity)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SellItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class SellItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SellItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public SellItemPacket(int slot, int quantity) : base(slot, quantity)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/IpAddress.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Intersect.Server.Web.RestApi.Payloads
8 | {
9 | public partial class IpAddress
10 | {
11 | public string Ip { get; set; }
12 |
13 | public DateTime LastUsed { get; set; }
14 |
15 | public Dictionary OtherUsers { get; set; } = new Dictionary();
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Client/Core/IClientContext.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Core;
2 |
3 | namespace Intersect.Client.Core
4 | {
5 | ///
6 | /// Declares the API surface of client contexts.
7 | ///
8 | internal interface IClientContext : IApplicationContext
9 | {
10 | ///
11 | /// The platform-specific runner that initializes the actual user-visible client.
12 | ///
13 | IPlatformRunner PlatformRunner { get; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Client/Maps/MapGrid.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Client.General;
4 | using Intersect.Client.Framework.Maps;
5 |
6 | namespace Intersect.Client.Maps
7 | {
8 | public partial class MapGrid : IMapGrid
9 | {
10 | ///
11 | public Guid[,] Content => Globals.MapGrid;
12 |
13 | ///
14 | public long Height => Globals.MapGridHeight;
15 |
16 | ///
17 | public long Width => Globals.MapGridWidth;
18 |
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/AdminAction.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum AdminAction
4 | {
5 | None = 0,
6 |
7 | WarpTo,
8 |
9 | WarpMeTo,
10 |
11 | WarpToMe,
12 |
13 | WarpToLoc,
14 |
15 | Kick,
16 |
17 | Kill,
18 |
19 | Ban,
20 |
21 | UnBan,
22 |
23 | Mute,
24 |
25 | UnMute,
26 |
27 | SetSprite,
28 |
29 | SetFace,
30 |
31 | SetAccess,
32 |
33 | ReturnToOverworld
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/Intersect.Client/Spells/Spell.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Spells
4 | {
5 |
6 | public partial class Spell
7 | {
8 |
9 | public Guid Id { get; set; }
10 |
11 | public Spell Clone()
12 | {
13 | var newSpell = new Spell() {
14 | Id = Id
15 | };
16 |
17 | return newSpell;
18 | }
19 |
20 | public void Load(Guid spellId)
21 | {
22 | Id = spellId;
23 | }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/OfferTradeItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class OfferTradeItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public OfferTradeItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public OfferTradeItemPacket(int slot, int quantity) : base(slot, quantity)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/PacketLifecycle.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 |
4 | namespace Intersect.Network
5 | {
6 | public sealed partial class PacketLifecycle
7 | {
8 | public Type PacketType { get; }
9 |
10 | public IReadOnlyList PreHandlers { get; }
11 |
12 | public IReadOnlyList PostHandlers { get; }
13 |
14 | public IPacketHandler Preprocessor { get; }
15 |
16 | public IPacketHandler Handler { get; }
17 |
18 |
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/RevokeTradeItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class RevokeTradeItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public RevokeTradeItemPacket() : base(0,0)
10 | {
11 | }
12 |
13 | public RevokeTradeItemPacket(int slot, int quantity) : base(slot, quantity)
14 | {
15 | }
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/ChatboxTab.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | ///
4 | /// Defines the chat tabs available within the engine, and is used to determine which one is currently in view.
5 | ///
6 | public enum ChatboxTab
7 | {
8 | All,
9 |
10 | Local,
11 |
12 | Party,
13 |
14 | Guild,
15 |
16 | Global,
17 |
18 | System,
19 |
20 | // Always keep this at the bottom, or you're going to have a very bad time!
21 | Count
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Extensions/GameObjectInfoAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Extensions
4 | {
5 |
6 | [AttributeUsage(AttributeTargets.Field, Inherited = false)]
7 | public sealed partial class GameObjectInfoAttribute : Attribute
8 | {
9 |
10 | public GameObjectInfoAttribute(Type type, string table)
11 | {
12 | Type = type;
13 | Table = table;
14 | }
15 |
16 | public Type Type { get; }
17 |
18 | public string Table { get; }
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Items/IItem.cs:
--------------------------------------------------------------------------------
1 | using Intersect.GameObjects;
2 | using Intersect.Network.Packets.Server;
3 | using System;
4 |
5 | namespace Intersect.Client.Framework.Items
6 | {
7 | public interface IItem
8 | {
9 | Guid? BagId { get; set; }
10 | ItemBase Base { get; }
11 | Guid ItemId { get; set; }
12 | int Quantity { get; set; }
13 | ItemProperties ItemProperties { get; set; }
14 |
15 | void Load(Guid id, int quantity, Guid? bagId, ItemProperties ItemProperties);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/SpellEffect.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Enums
2 | {
3 | public enum SpellEffect
4 | {
5 | None = 0,
6 |
7 | Silence = 1,
8 |
9 | Stun = 2,
10 |
11 | Snare = 3,
12 |
13 | Blind = 4,
14 |
15 | Stealth = 5,
16 |
17 | Transform = 6,
18 |
19 | Cleanse = 7,
20 |
21 | Invulnerable = 8,
22 |
23 | Shield = 9,
24 |
25 | Sleep = 10,
26 |
27 | OnHit = 11,
28 |
29 | Taunt = 12,
30 |
31 | Knockback = 13
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/Intersect (Core)/Utilities/VersionHelper.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Reflection;
3 |
4 | namespace Intersect.Utilities
5 | {
6 |
7 | public static partial class VersionHelper
8 | {
9 |
10 | public static Version LibraryVersion => Assembly.GetAssembly(typeof(VersionHelper))?.GetName().Version;
11 |
12 | public static Version ExecutableVersion => Assembly.GetEntryAssembly()?.GetName().Version ??
13 | Assembly.GetExecutingAssembly().GetName().Version;
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Commands/ExitCommand.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Core.CommandParsing;
2 | using Intersect.Server.Localization;
3 |
4 | namespace Intersect.Server.Core.Commands
5 | {
6 |
7 | internal sealed partial class ExitCommand : ServerCommand
8 | {
9 |
10 | public ExitCommand() : base(Strings.Commands.Exit)
11 | {
12 | }
13 |
14 | protected override void HandleValue(ServerContext context, ParserResult result)
15 | {
16 | context.RequestShutdown();
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20201004032158_EnablingCerasVersionTolerance.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 | public partial class EnablingCerasVersionTolerance : Migration
6 | {
7 | protected override void Up(MigrationBuilder migrationBuilder)
8 | {
9 | //We are intentionally not doing anything here.
10 | //Do not delete this migration.
11 | //Post migration we fix ceras version tolerance.
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Payloads/AuthorizedChange.cs:
--------------------------------------------------------------------------------
1 | using System.ComponentModel.DataAnnotations.Schema;
2 |
3 | using Newtonsoft.Json;
4 |
5 | namespace Intersect.Server.Web.RestApi.Payloads
6 | {
7 |
8 | public partial struct AuthorizedChange
9 | {
10 |
11 | [JsonIgnore, NotMapped]
12 | public bool IsValid => !string.IsNullOrWhiteSpace(Authorization) && !string.IsNullOrWhiteSpace(New);
13 |
14 | public string Authorization { get; set; }
15 |
16 | public string New { get; set; }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/BlockPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class BlockPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public BlockPacket()
10 | {
11 | }
12 |
13 | public BlockPacket(bool blocking)
14 | {
15 | Blocking = blocking;
16 | }
17 |
18 | [Key(0)]
19 | public bool Blocking { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ConfigPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class ConfigPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public ConfigPacket()
10 | {
11 | }
12 |
13 | public ConfigPacket(string config)
14 | {
15 | Config = config;
16 | }
17 |
18 | [Key(0)]
19 | public string Config { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PlayMusicPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class PlayMusicPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public PlayMusicPacket()
10 | {
11 | }
12 |
13 | public PlayMusicPacket(string bgm)
14 | {
15 | BGM = bgm;
16 | }
17 |
18 | [Key(0)]
19 | public string BGM { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin/Packets/Client/ExamplePluginClientPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Network;
2 |
3 | using MessagePack;
4 |
5 | namespace Intersect.Examples.Plugin.Packets.Client
6 | {
7 | [MessagePackObject]
8 | public class ExamplePluginClientPacket : IntersectPacket
9 | {
10 | [Key(0)]
11 | public string ExamplePluginMessage { get; set; }
12 |
13 | public ExamplePluginClientPacket(string examplePluginMessage)
14 | {
15 | ExamplePluginMessage = examplePluginMessage;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin/Packets/Server/ExamplePluginServerPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Network;
2 |
3 | using MessagePack;
4 |
5 | namespace Intersect.Examples.Plugin.Packets.Server
6 | {
7 | [MessagePackObject]
8 | public class ExamplePluginServerPacket : IntersectPacket
9 | {
10 | [Key(0)]
11 | public string ExamplePluginMessage { get; set; }
12 |
13 | public ExamplePluginServerPacket(string examplePluginMessage)
14 | {
15 | ExamplePluginMessage = examplePluginMessage;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Intersect.Client/Entities/Events/Dialog.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Entities.Events
4 | {
5 |
6 | public partial class Dialog
7 | {
8 |
9 | public Guid EventId;
10 |
11 | public string Face = "";
12 |
13 | public string Opt1 = "";
14 |
15 | public string Opt2 = "";
16 |
17 | public string Opt3 = "";
18 |
19 | public string Opt4 = "";
20 |
21 | public string Prompt = "";
22 |
23 | public int ResponseSent;
24 |
25 | public int Type;
26 |
27 | }
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/Intersect.Tests/Plugins/manifest.lowercase.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Test Manifest",
3 | "key": "AscensionGameDev.Intersect.Tests",
4 | "version": "1.0.0",
5 | "authors": [
6 | {
7 | "name": "Test Author"
8 | },
9 | {
10 | "name": "Test Author With Email",
11 | "email": "test@email.author"
12 | },
13 | {
14 | "name": "Test Full Author",
15 | "email": "test@full.author",
16 | "homepage": "https://fullauthor.example.com"
17 | }
18 | ],
19 | "homepage": "https://github.com/AscensionGameDev/Intersect-Engine"
20 | }
--------------------------------------------------------------------------------
/Intersect.Tests/Plugins/manifest.well-formed.json:
--------------------------------------------------------------------------------
1 | {
2 | "Name": "Test Manifest",
3 | "Key": "AscensionGameDev.Intersect.Tests",
4 | "Version": "1.0.0",
5 | "Authors": [
6 | {
7 | "Name": "Test Author"
8 | },
9 | {
10 | "Name": "Test Author With Email",
11 | "Email": "test@email.author"
12 | },
13 | {
14 | "Name": "Test Full Author",
15 | "Email": "test@full.author",
16 | "Homepage": "https://fullauthor.example.com"
17 | }
18 | ],
19 | "Homepage": "https://github.com/AscensionGameDev/Intersect-Engine"
20 | }
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/UnequipItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class UnequipItemPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public UnequipItemPacket()
10 | {
11 | }
12 |
13 | public UnequipItemPacket(int slot)
14 | {
15 | Slot = slot;
16 | }
17 |
18 | [Key(0)]
19 | public int Slot { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/UpgradeStatPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class UpgradeStatPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public UpgradeStatPacket()
10 | {
11 | }
12 |
13 | public UpgradeStatPacket(byte stat)
14 | {
15 | Stat = stat;
16 | }
17 |
18 | [Key(0)]
19 | public byte Stat { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/MapAreaPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class MapAreaPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public MapAreaPacket()
10 | {
11 | }
12 |
13 | public MapAreaPacket(MapPacket[] maps)
14 | {
15 | Maps = maps;
16 | }
17 |
18 | [Key(0)]
19 | public MapPacket[] Maps { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/MoveRoutePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class MoveRoutePacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public MoveRoutePacket()
10 | {
11 | }
12 |
13 | public MoveRoutePacket(bool active)
14 | {
15 | Active = active;
16 | }
17 |
18 | [Key(0)]
19 | public bool Active { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PlaySoundPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class PlaySoundPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public PlaySoundPacket()
10 | {
11 | }
12 |
13 | public PlaySoundPacket(string sound)
14 | {
15 | Sound = sound;
16 | }
17 |
18 | [Key(0)]
19 | public string Sound { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/StatPointsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class StatPointsPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public StatPointsPacket()
10 | {
11 | }
12 |
13 | public StatPointsPacket(int points)
14 | {
15 | Points = points;
16 | }
17 |
18 | [Key(0)]
19 | public int Points { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IStatus.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using System;
3 |
4 | namespace Intersect.Client.Framework.Entities
5 | {
6 | public interface IStatus
7 | {
8 | string Data { get; set; }
9 | int[] Shield { get; set; }
10 | Guid SpellId { get; set; }
11 | long TimeRecevied { get; set; }
12 | long TimeRemaining { get; set; }
13 | long TotalDuration { get; set; }
14 | SpellEffect Type { get; set; }
15 |
16 | bool IsActive { get; }
17 | long RemainingMs { get; }
18 | }
19 | }
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Events/EventMovement.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 |
3 | namespace Intersect.GameObjects.Events
4 | {
5 |
6 | public partial class EventMovement
7 | {
8 |
9 | public EventMovementType Type { get; set; } = EventMovementType.None;
10 |
11 | public EventMovementFrequency Frequency { get; set; } = EventMovementFrequency.Normal;
12 |
13 | public EventMovementSpeed Speed { get; set; } = EventMovementSpeed.Normal;
14 |
15 | public EventMoveRoute Route { get; set; } = new EventMoveRoute();
16 |
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/NeedMapPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class NeedMapPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public NeedMapPacket()
11 | {
12 | }
13 |
14 | public NeedMapPacket(Guid mapId)
15 | {
16 | MapId = mapId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid MapId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/NeedMapPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Editor
5 | {
6 | [MessagePackObject]
7 | public partial class NeedMapPacket : EditorPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public NeedMapPacket()
11 | {
12 | }
13 |
14 | public NeedMapPacket(Guid mapId)
15 | {
16 | MapId = mapId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid MapId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/HotbarPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class HotbarPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public HotbarPacket()
10 | {
11 | }
12 |
13 | public HotbarPacket(string[] slotData)
14 | {
15 | SlotData = slotData;
16 | }
17 |
18 | [Key(0)]
19 | public string[] SlotData { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ResourceEntityPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class ResourceEntityPacket : EntityPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public ResourceEntityPacket()
11 | {
12 | }
13 |
14 |
15 | [Key(24)]
16 | public Guid ResourceId { get; set; }
17 |
18 |
19 | [Key(25)]
20 | public bool IsDead { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Configuration/IConfigurable.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Configuration
2 | {
3 |
4 | ///
5 | /// Base interface for configurable objects
6 | ///
7 | /// Configuration type
8 | public interface IConfigurable where TConfiguration : IConfiguration
9 | {
10 |
11 | ///
12 | /// The configuration instance for this object
13 | ///
14 | TConfiguration Configuration { get; }
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/EnterMapPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Editor
5 | {
6 | [MessagePackObject]
7 | public partial class EnterMapPacket : EditorPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public EnterMapPacket()
11 | {
12 | }
13 |
14 | public EnterMapPacket(Guid mapId)
15 | {
16 | MapId = mapId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid MapId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/EnterMapPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class EnterMapPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public EnterMapPacket()
11 | {
12 | }
13 |
14 | public EnterMapPacket(Guid mapId)
15 | {
16 | MapId = mapId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid MapId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/TimeDataPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class TimeDataPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public TimeDataPacket()
10 | {
11 | }
12 |
13 | public TimeDataPacket(string timeJson)
14 | {
15 | TimeJson = timeJson;
16 | }
17 |
18 | [Key(0)]
19 | public string TimeJson { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/TradePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class TradePacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public TradePacket()
10 | {
11 | }
12 |
13 | public TradePacket(string partnerName)
14 | {
15 | TradePartner = partnerName;
16 | }
17 |
18 | [Key(0)]
19 | public string TradePartner { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/DnsUtils.cs:
--------------------------------------------------------------------------------
1 | using System.Linq;
2 | using System.Net;
3 | using System.Net.Sockets;
4 |
5 | namespace Intersect.Network
6 | {
7 |
8 | public static partial class DnsUtils
9 | {
10 |
11 | public static IPAddress Resolve(string hostname)
12 | {
13 | return string.IsNullOrEmpty(hostname?.Trim())
14 | ? new IPAddress(0)
15 | : Dns.GetHostEntry(hostname.Trim())
16 | .AddressList?.First(ip => ip?.AddressFamily == AddressFamily.InterNetwork);
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/MapListPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class MapListPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public MapListPacket()
10 | {
11 | }
12 |
13 | public MapListPacket(string mapListData)
14 | {
15 | MapListData = mapListData;
16 | }
17 |
18 | [Key(0)]
19 | public string MapListData { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/SpellsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class SpellsPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SpellsPacket()
10 | {
11 | }
12 |
13 | public SpellsPacket(SpellUpdatePacket[] slots)
14 | {
15 | Slots = slots;
16 | }
17 |
18 | [Key(0)]
19 | public SpellUpdatePacket[] Slots { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Client/MonoGame/Audio/MonoAudioInstance.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Client.Framework.Audio;
4 |
5 | namespace Intersect.Client.MonoGame.Audio
6 | {
7 |
8 | public abstract partial class MonoAudioInstance : GameAudioInstance where TSource : GameAudioSource
9 | {
10 |
11 | ///
12 | protected MonoAudioInstance(GameAudioSource source) : base(source)
13 | {
14 | }
15 |
16 | public new TSource Source => base.Source as TSource ?? throw new InvalidOperationException();
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Commands/ServerCommand.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Localization;
2 | using Intersect.Server.Core.CommandParsing.Arguments;
3 | using Intersect.Server.Core.CommandParsing.Commands;
4 |
5 | namespace Intersect.Server.Core.Commands
6 | {
7 |
8 | internal abstract partial class ServerCommand : HelpableCommand
9 | {
10 |
11 | protected ServerCommand(
12 | LocaleCommand localization,
13 | params ICommandArgument[] arguments
14 | ) : base(localization, arguments)
15 | {
16 | }
17 |
18 | }
19 |
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/AddTilesetsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Editor
4 | {
5 | [MessagePackObject]
6 | public partial class AddTilesetsPacket : EditorPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public AddTilesetsPacket()
10 | {
11 | }
12 |
13 | public AddTilesetsPacket(string[] tilesets)
14 | {
15 | Tilesets = tilesets;
16 | }
17 |
18 | [Key(0)]
19 | public string[] Tilesets { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/RequestGridPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Editor
5 | {
6 | [MessagePackObject]
7 | public partial class RequestGridPacket : EditorPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public RequestGridPacket()
11 | {
12 | }
13 |
14 | public RequestGridPacket(Guid mapId)
15 | {
16 | MapId = mapId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid MapId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/SaveTimeDataPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Editor
4 | {
5 | [MessagePackObject]
6 | public partial class SaveTimeDataPacket : EditorPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public SaveTimeDataPacket()
10 | {
11 | }
12 |
13 | public SaveTimeDataPacket(string timeJson)
14 | {
15 | TimeJson = timeJson;
16 | }
17 |
18 | [Key(0)]
19 | public string TimeJson { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Client/Resources/MonoGame.Framework.dll.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/AttackPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class AttackPacket : AbstractTimedPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public AttackPacket()
11 | {
12 |
13 | }
14 |
15 | public AttackPacket(Guid target)
16 | {
17 | Target = target;
18 | }
19 |
20 | [Key(3)]
21 | public Guid Target { get; set; }
22 |
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/PartyKickPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class PartyKickPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public PartyKickPacket()
11 | {
12 | }
13 |
14 | public PartyKickPacket(Guid targetId)
15 | {
16 | TargetId = targetId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid TargetId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PingPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class PingPacket : AbstractTimedPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public PingPacket()
10 | {
11 |
12 | }
13 |
14 | public PingPacket(bool requestingReply)
15 | {
16 | RequestingReply = requestingReply;
17 | }
18 |
19 | [Key(3)]
20 | public bool RequestingReply { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/QuestOfferPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class QuestOfferPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public QuestOfferPacket()
11 | {
12 | }
13 |
14 | public QuestOfferPacket(Guid questId)
15 | {
16 | QuestId = questId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid QuestId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Pos.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Gwen
4 | {
5 |
6 | ///
7 | /// Represents relative position.
8 | ///
9 | [Flags]
10 | public enum Pos
11 | {
12 |
13 | None = 0,
14 |
15 | Left = 1 << 1,
16 |
17 | Right = 1 << 2,
18 |
19 | Top = 1 << 3,
20 |
21 | Bottom = 1 << 4,
22 |
23 | CenterV = 1 << 5,
24 |
25 | CenterH = 1 << 6,
26 |
27 | Fill = 1 << 7,
28 |
29 | Center = CenterV | CenterH,
30 |
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/20200301145105_SavingPlayerLabelsInDb.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations
4 | {
5 |
6 | public partial class SavingPlayerLabelsInDb : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "FooterLabel", table: "Players", nullable: true);
12 |
13 | migrationBuilder.AddColumn(name: "HeaderLabel", table: "Players", nullable: true);
14 | }
15 |
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/AUTHORS.md:
--------------------------------------------------------------------------------
1 | # Intersect Authors
2 |
3 | [JC Snider](https://github.com/jcsnider)
4 |
5 | [Joe Bridges](https://github.com/irokaiser)
6 |
7 | [Robbie Lodico](https://github.com/lodicolo)
8 |
9 | # Intersect Maintainers
10 |
11 | [Jocelyn Cobb](https://github.com/Cheshire92)
12 |
13 | # Intersect Contributors
14 |
15 | [Alex Vild](https://github.com/AlexVild)
16 |
17 | [A. I. Robin](https://github.com/alloin)
18 |
19 | [char32](https://github.com/char32)
20 |
21 | [Dog from the Kash Shop](#)
22 |
23 | [Fernando Arzola Lagos](https://github.com/Arufonsu)
24 |
25 | [Shenmue](https://github.com/RedBandana)
--------------------------------------------------------------------------------
/Intersect (Core)/Network/IConnection.cs:
--------------------------------------------------------------------------------
1 |
2 | using System;
3 |
4 | namespace Intersect.Network
5 | {
6 | public interface IConnection : IDisposable
7 | {
8 | Guid Guid { get; }
9 |
10 | bool IsConnected { get; }
11 |
12 | string Ip { get; }
13 |
14 | int Port { get; }
15 |
16 | ConnectionStatistics Statistics { get; }
17 |
18 | bool Send(IPacket packet, TransmissionMode mode = TransmissionMode.All);
19 |
20 | void HandleConnected();
21 |
22 | void HandleApproved();
23 |
24 | void HandleDisconnected();
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/CancelCastPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class CancelCastPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public CancelCastPacket()
11 | {
12 | }
13 |
14 | public CancelCastPacket(Guid entityId)
15 | {
16 | EntityId = entityId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid EntityId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PartyPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class PartyPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public PartyPacket()
10 | {
11 | }
12 |
13 | public PartyPacket(PartyMemberPacket[] memberData)
14 | {
15 | MemberData = memberData;
16 | }
17 |
18 | [Key(0)]
19 | public PartyMemberPacket[] MemberData { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/InventoryPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class InventoryPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public InventoryPacket()
10 | {
11 | }
12 |
13 | public InventoryPacket(InventoryUpdatePacket[] slots)
14 | {
15 | Slots = slots;
16 | }
17 |
18 | [Key(0)]
19 | public InventoryUpdatePacket[] Slots { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PlayerDeathPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class PlayerDeathPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public PlayerDeathPacket()
11 | {
12 | }
13 |
14 | public PlayerDeathPacket(Guid playerId)
15 | {
16 | PlayerId = playerId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid PlayerId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Server/Entities/Pathfinding/PathfinderTarget.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Server.Entities.Pathfinding
4 | {
5 |
6 | public partial class PathfinderTarget
7 | {
8 |
9 | public Guid TargetMapId;
10 |
11 | public int TargetX;
12 |
13 | public int TargetY;
14 |
15 | public int TargetZ;
16 |
17 | public PathfinderTarget(Guid mapId, int x, int y, int z)
18 | {
19 | TargetMapId = mapId;
20 | TargetX = x;
21 | TargetY = y;
22 | TargetZ = z;
23 | }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/AbandonQuestPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class AbandonQuestPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public AbandonQuestPacket()
11 | {
12 |
13 | }
14 |
15 | public AbandonQuestPacket(Guid questId)
16 | {
17 | QuestId = questId;
18 | }
19 |
20 | [Key(0)]
21 | public Guid QuestId { get; set; }
22 |
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/LogoutPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class LogoutPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public LogoutPacket()
10 | {
11 | }
12 |
13 | public LogoutPacket(bool returnToCharSelect)
14 | {
15 | ReturningToCharSelect = returnToCharSelect;
16 | }
17 |
18 | [Key(0)]
19 | public bool ReturningToCharSelect { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/PictureClosedPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class PictureClosedPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public PictureClosedPacket()
11 | {
12 | }
13 |
14 | public PictureClosedPacket(Guid eventId)
15 | {
16 | EventId = eventId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid EventId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/TradeRequestPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class TradeRequestPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public TradeRequestPacket()
11 | {
12 | }
13 |
14 | public TradeRequestPacket(Guid targetId)
15 | {
16 | TargetId = targetId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid TargetId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Extensions/HttpRequestMessageExtensions.cs:
--------------------------------------------------------------------------------
1 | using System.Net;
2 | using System.Net.Http;
3 |
4 | namespace Intersect.Server.Web.RestApi.Extensions
5 | {
6 |
7 | internal static partial class HttpRequestMessageExtensions
8 | {
9 |
10 | public static HttpResponseMessage CreateMessageResponse(
11 | this HttpRequestMessage request,
12 | HttpStatusCode statusCode,
13 | string message
14 | )
15 | {
16 | return request.CreateResponse(statusCode, new {Message = message});
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/ActivateEventPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class ActivateEventPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public ActivateEventPacket()
11 | {
12 |
13 | }
14 |
15 | public ActivateEventPacket(Guid eventId)
16 | {
17 | EventId = eventId;
18 | }
19 |
20 | [Key(0)]
21 | public Guid EventId { get; set; }
22 |
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/OpenEditorPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class OpenEditorPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public OpenEditorPacket()
11 | {
12 | }
13 |
14 | public OpenEditorPacket(GameObjectType type)
15 | {
16 | Type = type;
17 | }
18 |
19 | [Key(0)]
20 | public GameObjectType Type { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/TargetOverridePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class TargetOverridePacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public TargetOverridePacket()
11 | {
12 | }
13 |
14 | public TargetOverridePacket(Guid targetId)
15 | {
16 | TargetId = targetId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid TargetId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/SuppressionJustifications.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect
2 | {
3 | ///
4 | /// Collection of commonly used justifications for suppressing code analysis warnings.
5 | ///
6 | public static partial class SuppressionJustifications
7 | {
8 | ///
9 | /// Analyzer doesn't respect JetBrains NotNullAttribute which already asserts non-nullability.
10 | ///
11 | public const string NotNullJetBrains =
12 | "Analyzer doesn't respect JetBrains NotNullAttribute which already asserts non-nullability.";
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/EventArguments/ItemSelectedEventArgs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Gwen.Control.EventArguments
4 | {
5 |
6 | public partial class ItemSelectedEventArgs : EventArgs
7 | {
8 |
9 | internal ItemSelectedEventArgs(Base selecteditem, bool automated = false)
10 | {
11 | this.SelectedItem = selecteditem;
12 | this.Automated = automated;
13 | }
14 |
15 | public Base SelectedItem { get; private set; }
16 |
17 | public bool Automated { get; private set; }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/MapEntitiesPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class MapEntitiesPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public MapEntitiesPacket()
10 | {
11 | }
12 |
13 | public MapEntitiesPacket(EntityPacket[] mapEntities)
14 | {
15 | MapEntities = mapEntities;
16 | }
17 |
18 | [Key(0)]
19 | public EntityPacket[] MapEntities { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PasswordResetResultPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class PasswordResetResultPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public PasswordResetResultPacket()
10 | {
11 | }
12 |
13 | public PasswordResetResultPacket(bool succeeded)
14 | {
15 | Succeeded = succeeded;
16 | }
17 |
18 | [Key(0)]
19 | public bool Succeeded { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Content/TextureType.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Intersect.Client.Framework.Content
8 | {
9 | public enum TextureType
10 | {
11 |
12 | Tileset = 0,
13 |
14 | Item,
15 |
16 | Entity,
17 |
18 | Spell,
19 |
20 | Animation,
21 |
22 | Face,
23 |
24 | Image,
25 |
26 | Fog,
27 |
28 | Resource,
29 |
30 | Paperdoll,
31 |
32 | Gui,
33 |
34 | Misc,
35 |
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/Intersect.Server/Metrics/Controllers/ApplicationMetricsController.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Server.Metrics.Controllers
2 | {
3 | public partial class ApplicationMetricsController : MetricsController
4 | {
5 | private const string CONTEXT = "Application";
6 |
7 | public Histogram Cpu { get; private set; }
8 |
9 | public Histogram Memory { get; private set; }
10 |
11 | public ApplicationMetricsController() : base(CONTEXT)
12 | {
13 | Cpu = new Histogram(nameof(Cpu), this);
14 | Memory = new Histogram(nameof(Memory), this);
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/DeleteCharacterPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class DeleteCharacterPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public DeleteCharacterPacket()
11 | {
12 | }
13 |
14 | public DeleteCharacterPacket(Guid charId)
15 | {
16 | CharacterId = charId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid CharacterId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/SelectCharacterPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class SelectCharacterPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public SelectCharacterPacket()
11 | {
12 | }
13 |
14 | public SelectCharacterPacket(Guid charId)
15 | {
16 | CharacterId = charId;
17 | }
18 |
19 | [Key(0)]
20 | public Guid CharacterId { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ActionMsgPackets.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class ActionMsgPackets : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public ActionMsgPackets()
11 | {
12 | }
13 |
14 | public ActionMsgPackets(ActionMsgPacket[] packets)
15 | {
16 | Packets = packets;
17 | }
18 |
19 | [Key(0)]
20 | public ActionMsgPacket[] Packets { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/EventArguments/ClickedEventArgs.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Gwen.Control.EventArguments
4 | {
5 |
6 | public partial class ClickedEventArgs : EventArgs
7 | {
8 |
9 | internal ClickedEventArgs(int x, int y, bool down)
10 | {
11 | this.X = x;
12 | this.Y = y;
13 | this.MouseDown = down;
14 | }
15 |
16 | public int X { get; private set; }
17 |
18 | public int Y { get; private set; }
19 |
20 | public bool MouseDown { get; private set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Commands/NetDebugCommand.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Core.CommandParsing;
2 | using Intersect.Server.Localization;
3 | using Intersect.Server.Networking.Helpers;
4 |
5 | namespace Intersect.Server.Core.Commands
6 | {
7 |
8 | internal sealed partial class NetDebugCommand : ServerCommand
9 | {
10 |
11 | public NetDebugCommand() : base(Strings.Commands.NetDebug)
12 | {
13 | }
14 |
15 | protected override void HandleValue(ServerContext context, ParserResult result)
16 | {
17 | NetDebug.GenerateDebugFile();
18 | }
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Maps/IMapGrid.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Client.Framework.Maps
4 | {
5 | public interface IMapGrid
6 | {
7 |
8 | ///
9 | /// The contents of the current map grid known to the client.
10 | ///
11 | Guid[,] Content { get; }
12 |
13 | ///
14 | /// The Width of the current map grid.
15 | ///
16 | long Width { get; }
17 |
18 | ///
19 | /// The Height of the current map grid.
20 | ///
21 | long Height { get; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/AdminActionPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Admin.Actions;
2 | using MessagePack;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class AdminActionPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public AdminActionPacket()
11 | {
12 |
13 | }
14 |
15 | public AdminActionPacket(AdminAction action)
16 | {
17 | Action = action;
18 | }
19 |
20 | [Key(0)]
21 | public AdminAction Action { get; set; }
22 |
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/CreateGameObjectPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Network.Packets.Editor
5 | {
6 | [MessagePackObject]
7 | public partial class CreateGameObjectPacket : EditorPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public CreateGameObjectPacket()
11 | {
12 | }
13 |
14 | public CreateGameObjectPacket(GameObjectType type)
15 | {
16 | Type = type;
17 | }
18 |
19 | [Key(0)]
20 | public GameObjectType Type { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Server/Database/IDbContext.cs:
--------------------------------------------------------------------------------
1 | using System.Threading;
2 | using System.Threading.Tasks;
3 |
4 | using Microsoft.EntityFrameworkCore.Infrastructure;
5 |
6 | namespace Intersect.Server.Database
7 | {
8 | public interface IDbContext
9 | {
10 | DatabaseFacade Database { get; }
11 |
12 | int SaveChanges();
13 |
14 | int SaveChanges(bool acceptAllChangesOnSuccess);
15 |
16 | Task SaveChangesAsync(bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default);
17 |
18 | Task SaveChangesAsync(CancellationToken cancellationToken = default);
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20210815153451_TickAnimationMigration.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 | using System;
3 |
4 | namespace Intersect.Server.Migrations.Game
5 | {
6 | public partial class TickAnimationMigration : Migration
7 | {
8 | protected override void Up(MigrationBuilder migrationBuilder)
9 | {
10 | migrationBuilder.AddColumn(
11 | name: "TickAnimation",
12 | table: "Spells",
13 | defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
14 | nullable: false);
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/RequestPasswordResetPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class RequestPasswordResetPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public RequestPasswordResetPacket()
10 | {
11 | }
12 |
13 | public RequestPasswordResetPacket(string nameOrEmail)
14 | {
15 | NameOrEmail = nameOrEmail;
16 | }
17 |
18 | [Key(0)]
19 | public string NameOrEmail { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Editor/RequestOpenEditorPacket.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Network.Packets.Editor
5 | {
6 | [MessagePackObject]
7 | public partial class RequestOpenEditorPacket : EditorPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public RequestOpenEditorPacket()
11 | {
12 | }
13 |
14 | public RequestOpenEditorPacket(GameObjectType type)
15 | {
16 | Type = type;
17 | }
18 |
19 | [Key(0)]
20 | public GameObjectType Type { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Updater/UpdateFile.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Updater
2 | {
3 | public partial class UpdateFile
4 | {
5 | public string Path { get; set; }
6 | public string Hash { get; set; }
7 | public long Size { get; set; }
8 | public bool ClientIgnore { get; set; }
9 | public bool EditorIgnore { get; set; }
10 |
11 | public UpdateFile()
12 | {
13 |
14 | }
15 |
16 | public UpdateFile(string path, string hash, long size)
17 | {
18 | Path = path;
19 | Hash = hash;
20 | Size = size;
21 | }
22 |
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Authentication/AuthenticationProvider.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Web.RestApi.Configuration;
2 |
3 | using Owin;
4 |
5 | namespace Intersect.Server.Web.RestApi.Authentication
6 | {
7 |
8 | internal abstract partial class AuthenticationProvider : IAppConfigurationProvider
9 | {
10 |
11 | protected AuthenticationProvider(ApiConfiguration configuration)
12 | {
13 | Configuration = configuration;
14 | }
15 |
16 | protected ApiConfiguration Configuration { get; }
17 |
18 | public abstract void Configure(IAppBuilder appBuilder);
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/LabelPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class LabelPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public LabelPacket()
10 | {
11 | }
12 |
13 |
14 | [Key(0)]
15 | public Color Color;
16 | [Key(1)]
17 | public string Label;
18 |
19 | public LabelPacket(string label, Color color)
20 | {
21 | Label = label;
22 | Color = color;
23 | }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/PlayAnimationPackets.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class PlayAnimationPackets : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public PlayAnimationPackets()
11 | {
12 | }
13 |
14 | public PlayAnimationPackets(PlayAnimationPacket[] packets)
15 | {
16 | Packets = packets;
17 | }
18 |
19 | [Key(0)]
20 | public PlayAnimationPacket[] Packets { get; set; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Security/ApiVisibilityAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Security
4 | {
5 |
6 | [AttributeUsage(
7 | AttributeTargets.Class |
8 | AttributeTargets.Interface |
9 | AttributeTargets.Struct |
10 | AttributeTargets.Field |
11 | AttributeTargets.Property
12 | )]
13 | public partial class ApiVisibilityAttribute : Attribute
14 | {
15 |
16 | public ApiVisibilityAttribute(ApiVisibility visibility)
17 | {
18 | Visibility = visibility;
19 | }
20 |
21 | public ApiVisibility Visibility { get; }
22 |
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/DepositItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class DepositItemPacket : SlotQuantityPacket
7 | {
8 |
9 | //Parameterless Constructor for MessagePack
10 | public DepositItemPacket() : base(0, 0)
11 | {
12 | }
13 |
14 | public DepositItemPacket(int slot, int quantity, int bankSlot = -1) : base(slot, quantity)
15 | {
16 | BankSlot = bankSlot;
17 | }
18 |
19 | [Key(0)]
20 | public int BankSlot { get; set; }
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/WithdrawItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class WithdrawItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public WithdrawItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public WithdrawItemPacket(int slot, int quantity, int invSlot = -1) : base(slot, quantity)
14 | {
15 | InvSlot = invSlot;
16 | }
17 |
18 | [Key(0)]
19 | public int InvSlot { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Editor/Maps/MapGridItem.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Microsoft.Xna.Framework.Graphics;
4 |
5 | namespace Intersect.Editor.Maps
6 | {
7 |
8 | public partial class MapGridItem
9 | {
10 |
11 | public MapGridItem(Guid id, string name = "", int revision = 0)
12 | {
13 | MapId = id;
14 | this.Name = name;
15 | this.Revision = revision;
16 | }
17 |
18 | public string Name { get; set; }
19 |
20 | public int Revision { get; set; }
21 |
22 | public Guid MapId { get; set; }
23 |
24 | public Texture2D Tex { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/IApplicationContext`1.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Core
2 | {
3 | ///
4 | /// Declares the API surface for applications with specialized startup options types.
5 | ///
6 | /// specialized startup options type
7 | public interface IApplicationContext : IApplicationContext
8 | where TStartupOptions : ICommandLineOptions
9 | {
10 | ///
11 | /// The specialized options the application was started with.
12 | ///
13 | new TStartupOptions StartupOptions { get; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/StoreBagItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class StoreBagItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public StoreBagItemPacket() : base(0, 0)
10 | {
11 | }
12 | public StoreBagItemPacket(int invSlot, int quantity, int bagSlot) : base(invSlot, quantity)
13 | {
14 | BagSlot = bagSlot;
15 | }
16 |
17 | [Key(0)]
18 | public int BagSlot { get; set; }
19 |
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/BagPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class BagPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public BagPacket()
10 | {
11 | }
12 |
13 | public BagPacket(int slots, bool close)
14 | {
15 | Slots = slots;
16 | Close = close;
17 | }
18 |
19 | [Key(0)]
20 | public int Slots { get; set; }
21 |
22 | [Key(1)]
23 | public bool Close { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/ConnectionStatistics.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 | public partial class ConnectionStatistics
4 | {
5 | public long Ping { get; set; }
6 |
7 | public long DroppedMessages { get; set; }
8 |
9 | public long ReceivedPackets { get; set; }
10 |
11 | public long ReceivedBytes { get; set; }
12 |
13 | public long ReceivedMessages { get; set; }
14 |
15 | public long ResentMessages { get; set; }
16 |
17 | public long SentPackets { get; set; }
18 |
19 | public long SentBytes { get; set; }
20 |
21 | public long SentMessages { get; set; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/BagUpdatePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class BagUpdatePacket : InventoryUpdatePacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public BagUpdatePacket() : base(0, Guid.Empty, 0, null, null)
11 | {
12 | }
13 |
14 | public BagUpdatePacket(int slot, Guid id, int quantity, Guid? bagId, ItemProperties properties) : base(
15 | slot, id, quantity, bagId, properties
16 | )
17 | {
18 | }
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect.Server/Database/Logging/ILoggingContext.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Database.Logging.Entities;
2 |
3 | using Microsoft.EntityFrameworkCore;
4 |
5 | using System;
6 |
7 | namespace Intersect.Server.Database.Logging
8 | {
9 | public interface ILoggingContext : IDbContext, IDisposable
10 | {
11 | DbSet RequestLogs { get; }
12 |
13 | DbSet UserActivityHistory { get; }
14 |
15 | DbSet ChatHistory { get; }
16 |
17 | DbSet TradeHistory { get; }
18 |
19 | DbSet GuildHistory { get; }
20 |
21 | void Seed();
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/RestApi/Types/DataPage.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | using Intersect.Server.Web.RestApi.Payloads;
4 |
5 | namespace Intersect.Server.Web.RestApi.Types
6 | {
7 |
8 | public partial struct DataPage
9 | {
10 |
11 | public int Total { get; set; }
12 |
13 | public int Page { get; set; }
14 |
15 | public int PageSize { get; set; }
16 |
17 | public int Count { get; set; }
18 |
19 | public IEnumerable Values { get; set; }
20 |
21 | public IEnumerable Sort { get; set; }
22 |
23 | public dynamic Extra { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ExperimentalFeatures/ExperimentalFlagAliasAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Core.ExperimentalFeatures
4 | {
5 |
6 | [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property)]
7 | public partial class ExperimentalFlagAliasAttribute : Attribute
8 | {
9 |
10 | public ExperimentalFlagAliasAttribute(string of)
11 | {
12 | if (string.IsNullOrWhiteSpace(of))
13 | {
14 | throw new ArgumentNullException(nameof(of));
15 | }
16 |
17 | Of = of;
18 | }
19 |
20 | public string Of { get; }
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ICommandLineOptions.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Intersect.Core
4 | {
5 | ///
6 | /// Declares the common basic command line options for all applications.
7 | ///
8 | public interface ICommandLineOptions
9 | {
10 | ///
11 | /// The override working directory.
12 | ///
13 | string WorkingDirectory { get; }
14 |
15 | ///
16 | /// Additional plugin directories besides /working/directory/plugins.
17 | ///
18 | IEnumerable PluginDirectories { get; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Maps/MapNpcSpawn.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Enums;
4 |
5 | namespace Intersect.GameObjects.Maps
6 | {
7 |
8 | public partial class NpcSpawn
9 | {
10 |
11 | public NpcSpawnDirection Direction;
12 |
13 | public Guid NpcId;
14 |
15 | public int X;
16 |
17 | public int Y;
18 |
19 | public NpcSpawn()
20 | {
21 | }
22 |
23 | public NpcSpawn(NpcSpawn copy)
24 | {
25 | NpcId = copy.NpcId;
26 | X = copy.X;
27 | Y = copy.Y;
28 | Direction = copy.Direction;
29 | }
30 |
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/BankUpdatePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class BankUpdatePacket : InventoryUpdatePacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public BankUpdatePacket() : base(0, Guid.Empty, 0, null, null)
11 | {
12 | }
13 |
14 | public BankUpdatePacket(int slot, Guid id, int quantity, Guid? bagId, ItemProperties properties) : base(
15 | slot, id, quantity, bagId, properties
16 | )
17 | {
18 | }
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect.Client/Entities/HotbarInstance.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Entities;
2 | using Intersect.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 |
6 | namespace Intersect.Client.Entities
7 | {
8 | public partial class HotbarInstance : IHotbarInstance
9 | {
10 |
11 | public Guid BagId { get; set; } = Guid.Empty;
12 |
13 | public Guid ItemOrSpellId { get; set; } = Guid.Empty;
14 |
15 | public int[] PreferredStatBuffs { get; set; } = new int[(int)Stat.StatCount];
16 |
17 | public void Load(string data)
18 | {
19 | JsonConvert.PopulateObject(data, this);
20 | }
21 |
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Server/Web/Utilities/HeaderHelper.cs:
--------------------------------------------------------------------------------
1 | using System.Text.RegularExpressions;
2 |
3 | namespace Intersect.Server.Web.Utilities
4 | {
5 |
6 | public static partial class HeaderHelper
7 | {
8 |
9 | public static readonly Regex PatternAuthorizationBearer = new Regex(
10 | "^bearer .+$", RegexOptions.IgnoreCase
11 | );
12 |
13 | public static bool IsValidAuthorizationBearerHeader(string authorizationHeader)
14 | {
15 | return !string.IsNullOrWhiteSpace(authorizationHeader) &&
16 | PatternAuthorizationBearer.IsMatch(authorizationHeader);
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ExperimentalFeatures/CommonExperiments.Flags.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 |
3 | namespace Intersect.Core.ExperimentalFeatures
4 | {
5 |
6 | public abstract partial class CommonExperiments where TExperiments : CommonExperiments
7 | {
8 |
9 | [JsonProperty(DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
10 | public IExperimentalFlag All { get; protected set; } = new ExperimentalFlag(nameof(All), NamespaceId);
11 |
12 | [JsonIgnore, ExperimentalFlagAlias(nameof(All))]
13 | public IExperimentalFlag ExperimentalFeatures { get; protected set; }
14 |
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/KickAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class KickAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public KickAction()
11 | {
12 |
13 | }
14 |
15 | public KickAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.Kick;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/KillAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class KillAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public KillAction()
11 | {
12 |
13 | }
14 |
15 | public KillAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.Kill;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/RetrieveBagItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class RetrieveBagItemPacket : SlotQuantityPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public RetrieveBagItemPacket() : base(0, 0)
10 | {
11 | }
12 |
13 | public RetrieveBagItemPacket(int bagSlot, int quantity, int invSlot) : base(bagSlot, quantity)
14 | {
15 | InventorySlot = invSlot;
16 | }
17 |
18 | [Key(4)]
19 | public int InventorySlot { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ItemCooldownPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 | using System.Collections.Generic;
4 |
5 | namespace Intersect.Network.Packets.Server
6 | {
7 | [MessagePackObject]
8 | public partial class ItemCooldownPacket : IntersectPacket
9 | {
10 | //Parameterless Constructor for MessagePack
11 | public ItemCooldownPacket()
12 | {
13 | }
14 |
15 |
16 | [Key(0)]
17 | public Dictionary ItemCds;
18 |
19 | public ItemCooldownPacket(Dictionary itemCds)
20 | {
21 | ItemCds = itemCds;
22 | }
23 |
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/Interfaces/ICommandLineHelper.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Plugins.Interfaces
2 | {
3 | ///
4 | /// Defines the API for accessing command line arguments.
5 | ///
6 | public interface ICommandLineHelper
7 | {
8 | ///
9 | /// Parses the command line arguments used to start the application into an instance of the provided type.
10 | ///
11 | /// a custom arguments type
12 | /// an instance of if valid
13 | TArguments ParseArguments();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Entities/IAnimation.cs:
--------------------------------------------------------------------------------
1 | using Intersect.GameObjects;
2 | using System;
3 | using Intersect.Enums;
4 |
5 | namespace Intersect.Client.Framework.Entities
6 | {
7 | public interface IAnimation : IDisposable
8 | {
9 | bool AutoRotate { get; set; }
10 | bool Hidden { get; set; }
11 | bool InfiniteLoop { get; set; }
12 | AnimationBase MyBase { get; set; }
13 | Point Size { get; }
14 |
15 | void Hide();
16 | void SetDir(Direction dir);
17 | void SetPosition(float worldX, float worldY, int mapx, int mapy, Guid mapId, Direction dir, int z = 0);
18 | void Show();
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20190306224847_BoundSpells.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 |
6 | public partial class BoundSpells : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "Bound", table: "Spells", nullable: false, defaultValue: false);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "Bound", table: "Spells");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/UnbanAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class UnbanAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public UnbanAction()
11 | {
12 |
13 | }
14 |
15 | public UnbanAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.UnBan;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ShopPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class ShopPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public ShopPacket()
10 | {
11 | }
12 |
13 | public ShopPacket(string shopData, bool close)
14 | {
15 | ShopData = shopData;
16 | Close = close;
17 | }
18 |
19 | [Key(0)]
20 | public string ShopData { get; set; }
21 |
22 | [Key(1)]
23 | public bool Close { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/SpellCooldownPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 | using System.Collections.Generic;
4 |
5 | namespace Intersect.Network.Packets.Server
6 | {
7 | [MessagePackObject]
8 | public partial class SpellCooldownPacket : IntersectPacket
9 | {
10 | //Parameterless Constructor for MessagePack
11 | public SpellCooldownPacket()
12 | {
13 | }
14 |
15 |
16 | [Key(0)]
17 | public Dictionary SpellCds;
18 |
19 | public SpellCooldownPacket(Dictionary spellCds)
20 | {
21 | SpellCds = spellCds;
22 | }
23 |
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/UnmuteAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class UnmuteAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public UnmuteAction()
11 | {
12 |
13 | }
14 |
15 | public UnmuteAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.UnMute;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Config/BankOptions.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Intersect.Config
8 | {
9 | public partial class BankOptions
10 | {
11 | ///
12 | /// The intersect default maximum bank slot value a guild OR player could ever have
13 | ///
14 | public const int DefaultMaxSlots = 500;
15 |
16 | ///
17 | /// The max amount of bank slots possible, player, guild, or otherwise.
18 | ///
19 | public int MaxSlots { get; set; } = DefaultMaxSlots;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/ChatMsgPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class ChatMsgPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public ChatMsgPacket()
10 | {
11 | }
12 |
13 | public ChatMsgPacket(string msg, byte channel)
14 | {
15 | Message = msg;
16 | Channel = channel;
17 | }
18 |
19 | [Key(0)]
20 | public string Message { get; set; }
21 |
22 | [Key(1)]
23 | public byte Channel { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/20190804133420_Custom_Player_Name_Colors.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations
4 | {
5 |
6 | public partial class Custom_Player_Name_Colors : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "NameColor", table: "Players", nullable: true);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "NameColor", table: "Players");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/BumpPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class BumpPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public BumpPacket()
11 | {
12 | }
13 |
14 | public BumpPacket(Guid mapId, Guid eventId)
15 | {
16 | MapId = mapId;
17 | EventId = eventId;
18 | }
19 |
20 | [Key(0)]
21 | public Guid MapId { get; set; }
22 |
23 | [Key(1)]
24 | public Guid EventId { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/WarpMeToAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class WarpMeToAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public WarpMeToAction()
11 | {
12 |
13 | }
14 |
15 | public WarpMeToAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.WarpMeTo;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/WarpToMeAction.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Enums;
2 | using MessagePack;
3 |
4 | namespace Intersect.Admin.Actions
5 | {
6 | [MessagePackObject]
7 | public partial class WarpToMeAction : AdminAction
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public WarpToMeAction()
11 | {
12 |
13 | }
14 |
15 | public WarpToMeAction(string name)
16 | {
17 | Name = name;
18 | }
19 |
20 | [Key(1)]
21 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.WarpToMe;
22 |
23 | [Key(2)]
24 | public string Name { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Commands/MakePublicCommand.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Core.CommandParsing;
2 | using Intersect.Server.Localization;
3 |
4 | namespace Intersect.Server.Core.Commands
5 | {
6 |
7 | internal sealed partial class MakePublicCommand : ServerCommand
8 | {
9 |
10 | public MakePublicCommand() : base(Strings.Commands.MakePublic)
11 | {
12 | }
13 |
14 | protected override void HandleValue(ServerContext context, ParserResult result)
15 | {
16 | Console.WriteLine($@" {Strings.Commands.madepublic}");
17 | Options.AdminOnly = false;
18 | Options.SaveToDisk();
19 | }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/LoginPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class LoginPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public LoginPacket()
10 | {
11 | }
12 |
13 | public LoginPacket(string username, string password)
14 | {
15 | Username = username;
16 | Password = password;
17 | }
18 |
19 | [Key(0)]
20 | public string Username { get; set; }
21 |
22 | [Key(1)]
23 | public string Password { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/UseItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class UseItemPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public UseItemPacket()
11 | {
12 | }
13 |
14 | public UseItemPacket(int slot, Guid targetId)
15 | {
16 | Slot = slot;
17 | TargetId = targetId;
18 | }
19 |
20 | [Key(0)]
21 | public int Slot { get; set; }
22 |
23 | [Key(1)]
24 | public Guid TargetId { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/ILabel.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Client.Framework.Graphics;
2 |
3 | namespace Intersect.Client.Framework.Gwen.Control
4 | {
5 | public interface ILabel : IColorableText
6 | {
7 | Pos Alignment { get; set; }
8 |
9 | bool AutoSizeToContents { get; set; }
10 |
11 | GameFont Font { get; set; }
12 |
13 | string FontName { get; set; }
14 |
15 | int FontSize { get; set; }
16 |
17 | Color TextColor { get; set; }
18 |
19 | Color TextColorOverride { get; set; }
20 |
21 | Padding TextPadding { get; set; }
22 |
23 | void SizeToContents();
24 |
25 | void UpdateColors();
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/Commands/MakePrivateCommand.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Server.Core.CommandParsing;
2 | using Intersect.Server.Localization;
3 |
4 | namespace Intersect.Server.Core.Commands
5 | {
6 |
7 | internal sealed partial class MakePrivateCommand : ServerCommand
8 | {
9 |
10 | public MakePrivateCommand() : base(Strings.Commands.MakePrivate)
11 | {
12 | }
13 |
14 | protected override void HandleValue(ServerContext context, ParserResult result)
15 | {
16 | Console.WriteLine($@" {Strings.Commands.madeprivate}");
17 | Options.AdminOnly = true;
18 | Options.SaveToDisk();
19 | }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20190303234637_SpellUpgrades_OnHit_Shields.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 |
6 | public partial class SpellUpgrades_OnHit_Shields : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "OnHit", table: "Spells", nullable: false, defaultValue: 0);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "OnHit", table: "Spells");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20190530000628_AddingCraftingQuantities.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 |
6 | public partial class AddingCraftingQuantities : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "Quantity", table: "Crafts", nullable: false, defaultValue: 0);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "Quantity", table: "Crafts");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin.ClientVB/ExamplePluginConfiguration.vb:
--------------------------------------------------------------------------------
1 | Imports Intersect.Plugins
2 | Imports Newtonsoft.Json
3 |
4 | Namespace Intersect.Examples.ClientPlugin
5 | '''
6 | ''' Example configuration class for a plugin.
7 | '''
8 | Friend Class ExamplePluginConfiguration
9 | Inherits PluginConfiguration
10 |
11 | '''
12 | ''' Link to discord invite that should open when discord button is clicked
13 | '''
14 |
15 | Public Property DiscordInviteUrl As String = "https://discord.gg/fAwDR5v"
16 | End Class
17 | End Namespace
18 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Maps/MapList/MapListFolder.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Collections;
4 |
5 | namespace Intersect.GameObjects.Maps.MapList
6 | {
7 |
8 | public partial class MapListFolder : MapListItem
9 | {
10 |
11 | public MapList Children = new MapList();
12 |
13 | public Guid FolderId = Guid.Empty;
14 |
15 | public MapListFolder() : base()
16 | {
17 | Name = "New Folder";
18 | Type = 0;
19 | }
20 |
21 | public void PostLoad(DatabaseObjectLookup gameMaps, bool isServer = true)
22 | {
23 | Children.PostLoad(gameMaps, isServer, false);
24 | }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/UpdateFriendsPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Client
4 | {
5 | [MessagePackObject]
6 | public partial class UpdateFriendsPacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public UpdateFriendsPacket()
10 | {
11 | }
12 |
13 | public UpdateFriendsPacket(string name, bool adding)
14 | {
15 | Name = name;
16 | Adding = adding;
17 | }
18 |
19 | [Key(0)]
20 | public string Name { get; set; }
21 |
22 | [Key(1)]
23 | public bool Adding { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/UseSpellPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class UseSpellPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public UseSpellPacket()
11 | {
12 | }
13 |
14 | public UseSpellPacket(int slot, Guid targetId)
15 | {
16 | Slot = slot;
17 | TargetId = targetId;
18 | }
19 |
20 | [Key(0)]
21 | public int Slot { get; set; }
22 |
23 | [Key(1)]
24 | public Guid TargetId { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ErrorMessagePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class ErrorMessagePacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public ErrorMessagePacket()
10 | {
11 | }
12 |
13 | public ErrorMessagePacket(string header, string error)
14 | {
15 | Header = header;
16 | Error = error;
17 | }
18 |
19 | [Key(0)]
20 | public string Header { get; set; }
21 |
22 | [Key(1)]
23 | public string Error { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Plugins/IPluginBootstrapContext.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins.Interfaces;
2 |
3 | namespace Intersect.Plugins
4 | {
5 | ///
6 | /// Defines the API of the plugin context during application bootstrapping.
7 | ///
8 | public interface IPluginBootstrapContext : IPluginBaseContext
9 | {
10 | ///
11 | /// The of the current plugin.
12 | ///
13 | ICommandLineHelper CommandLine { get; }
14 |
15 | ///
16 | /// The of the current plugin.
17 | ///
18 | IPacketHelper Packet { get; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Core/CommandParsing/ParserContext.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Immutable;
2 |
3 | using Intersect.Server.Core.CommandParsing.Arguments;
4 | using Intersect.Server.Core.CommandParsing.Commands;
5 | using Intersect.Server.Core.CommandParsing.Errors;
6 |
7 | namespace Intersect.Server.Core.CommandParsing
8 | {
9 |
10 | public partial struct ParserContext
11 | {
12 |
13 | public ICommand Command { get; set; }
14 |
15 | public ImmutableList Tokens { get; set; }
16 |
17 | public ImmutableList Errors { get; set; }
18 |
19 | public ImmutableDictionary Parsed { get; set; }
20 |
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Examples/Intersect.Examples.Plugin.Client/ExamplePluginConfiguration.cs:
--------------------------------------------------------------------------------
1 | using Intersect.Plugins;
2 |
3 | using Newtonsoft.Json;
4 |
5 | namespace Intersect.Examples.Plugin.Client
6 | {
7 |
8 | ///
9 | /// Example configuration class for a plugin.
10 | ///
11 | internal class ExamplePluginConfiguration : PluginConfiguration
12 | {
13 |
14 | ///
15 | /// Link to discord invite that should open when discord button is clicked
16 | ///
17 | [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
18 | public string DiscordInviteUrl { get; set; } = "https://discord.gg/Z6fHThedPK";
19 |
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Client/CraftItemPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Client
5 | {
6 | [MessagePackObject]
7 | public partial class CraftItemPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public CraftItemPacket()
11 | {
12 | }
13 |
14 | public CraftItemPacket(Guid craftId, int count)
15 | {
16 | CraftId = craftId;
17 | Count = count;
18 | }
19 |
20 | [Key(0)]
21 | public Guid CraftId { get; set; }
22 |
23 | [Key(1)]
24 | public int Count { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/SpellUpdatePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class SpellUpdatePacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public SpellUpdatePacket()
11 | {
12 | }
13 |
14 | public SpellUpdatePacket(int slot, Guid spellId)
15 | {
16 | Slot = slot;
17 | SpellId = spellId;
18 | }
19 |
20 | [Key(0)]
21 | public int Slot { get; set; }
22 |
23 | [Key(1)]
24 | public Guid SpellId { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Security/ApiVisibility.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Security
4 | {
5 |
6 | [Flags]
7 | public enum ApiVisibility : uint
8 | {
9 |
10 | ///
11 | /// Anyone has access.
12 | ///
13 | Public = 0xFFFFFFFF,
14 |
15 | ///
16 | /// Privileged users have access.
17 | ///
18 | Restricted = 0x2,
19 |
20 | ///
21 | /// Data owners have access.
22 | ///
23 | Private = 0x1,
24 |
25 | ///
26 | /// No users have access.
27 | ///
28 | Hidden = 0
29 |
30 | }
31 |
32 | }
33 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20190615010038_AddingExpOveridesToClasses.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 |
6 | public partial class AddingExpOveridesToClasses : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "ExperienceOverrides", table: "Classes", nullable: true);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "ExperienceOverrides", table: "Classes");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Admin/Actions/WarpToMapAction.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Enums;
4 | using MessagePack;
5 |
6 | namespace Intersect.Admin.Actions
7 | {
8 | [MessagePackObject]
9 | public partial class WarpToMapAction : AdminAction
10 | {
11 | //Parameterless Constructor for MessagePack
12 | public WarpToMapAction()
13 | {
14 |
15 | }
16 |
17 | public WarpToMapAction(Guid mapId)
18 | {
19 | MapId = mapId;
20 | }
21 |
22 | [Key(1)]
23 | public override Enums.AdminAction Action { get; } = Enums.AdminAction.WarpTo;
24 |
25 | [Key(2)]
26 | public Guid MapId { get; set; }
27 |
28 | }
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/Intersect (Core)/Enums/SpellCastFailureReason.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Intersect.Enums
8 | {
9 | public enum SpellCastFailureReason
10 | {
11 | None,
12 |
13 | InvalidSpell,
14 |
15 | InsufficientHP,
16 |
17 | InsufficientMP,
18 |
19 | InvalidTarget,
20 |
21 | Silenced,
22 |
23 | Stunned,
24 |
25 | Asleep,
26 |
27 | InvalidProjectile,
28 |
29 | InsufficientItems,
30 |
31 | Snared,
32 |
33 | OutOfRange,
34 |
35 | ConditionsNotMet,
36 |
37 | OnCooldown
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/CraftingTablePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class CraftingTablePacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public CraftingTablePacket()
10 | {
11 | }
12 |
13 | public CraftingTablePacket(string tableData, bool close)
14 | {
15 | TableData = tableData;
16 | Close = close;
17 | }
18 |
19 | [Key(0)]
20 | public string TableData { get; set; }
21 |
22 | [Key(1)]
23 | public bool Close { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/ExperiencePacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 |
3 | namespace Intersect.Network.Packets.Server
4 | {
5 | [MessagePackObject]
6 | public partial class ExperiencePacket : IntersectPacket
7 | {
8 | //Parameterless Constructor for MessagePack
9 | public ExperiencePacket()
10 | {
11 | }
12 |
13 | public ExperiencePacket(long exp, long tnl)
14 | {
15 | Experience = exp;
16 | ExperienceToNextLevel = tnl;
17 | }
18 |
19 | [Key(0)]
20 | public long Experience { get; set; }
21 |
22 | [Key(1)]
23 | public long ExperienceToNextLevel { get; set; }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Packets/Server/SpellCastPacket.cs:
--------------------------------------------------------------------------------
1 | using MessagePack;
2 | using System;
3 |
4 | namespace Intersect.Network.Packets.Server
5 | {
6 | [MessagePackObject]
7 | public partial class SpellCastPacket : IntersectPacket
8 | {
9 | //Parameterless Constructor for MessagePack
10 | public SpellCastPacket()
11 | {
12 | }
13 |
14 | public SpellCastPacket(Guid entityId, Guid spellId)
15 | {
16 | EntityId = entityId;
17 | SpellId = spellId;
18 | }
19 |
20 | [Key(0)]
21 | public Guid EntityId { get; set; }
22 |
23 | [Key(1)]
24 | public Guid SpellId { get; set; }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/Data/ITableDataProvider.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Gwen.Control.Data
2 | {
3 | public partial class TableDataChangedEventArgs : RowDataChangedEventArgs
4 | {
5 | public TableDataChangedEventArgs(int row, int column, object oldValue, object newValue)
6 | : base(column, oldValue, newValue)
7 | {
8 | Row = row;
9 | }
10 |
11 | public int Row { get; }
12 | }
13 |
14 | public delegate void TableDataChangedEventHandler(object sender, TableDataChangedEventArgs args);
15 |
16 | public interface ITableDataProvider
17 | {
18 | event TableDataChangedEventHandler DataChanged;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Client.Framework/Gwen/Control/Data/ITableRowDataProvider.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Client.Framework.Gwen.Control.Data
2 | {
3 | public partial class RowDataChangedEventArgs : CellDataChangedEventArgs
4 | {
5 | public RowDataChangedEventArgs(int column, object oldValue, object newValue)
6 | : base(oldValue, newValue)
7 | {
8 | Column = column;
9 | }
10 |
11 | public int Column { get; }
12 | }
13 |
14 | public delegate void TableRowDataChangedEventHandler(object sender, RowDataChangedEventArgs args);
15 |
16 | public interface ITableRowDataProvider
17 | {
18 | event TableRowDataChangedEventHandler DataChanged;
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect.Server/Migrations/Game/20190726203949_SpellUpgrades_Percentage_Buffs.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.EntityFrameworkCore.Migrations;
2 |
3 | namespace Intersect.Server.Migrations.Game
4 | {
5 |
6 | public partial class SpellUpgrades_Percentage_Buffs : Migration
7 | {
8 |
9 | protected override void Up(MigrationBuilder migrationBuilder)
10 | {
11 | migrationBuilder.AddColumn(name: "PercentageStatDiff", table: "Spells", nullable: true);
12 | }
13 |
14 | protected override void Down(MigrationBuilder migrationBuilder)
15 | {
16 | migrationBuilder.DropColumn(name: "PercentageStatDiff", table: "Spells");
17 | }
18 |
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/Intersect (Core)/Network/Delegates.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Network
2 | {
3 | public delegate bool HandlePacket(TPacketSender packetSender, TPacket packet)
4 | where TPacketSender : IPacketSender where TPacket : IPacket;
5 |
6 | public delegate void HandlePacketVoid(TPacketSender packetSender, TPacket packet)
7 | where TPacketSender : IPacketSender where TPacket : IPacket;
8 |
9 | public delegate bool HandlePacketGeneric(IPacketSender packetSender, IPacket packet);
10 |
11 | public delegate bool HandlePacket(IConnection connection, IPacket packet);
12 |
13 | public delegate bool ShouldProcessPacket(IConnection connection, long pSize);
14 | }
15 |
--------------------------------------------------------------------------------
/Intersect (Core)/Config/SmtpSettings.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Config
2 | {
3 |
4 | public partial class SmtpSettings
5 | {
6 |
7 | public string FromAddress { get; set; } = "";
8 |
9 | public string FromName { get; set; } = "";
10 |
11 | public string Host { get; set; } = "";
12 |
13 | public int Port { get; set; } = 587;
14 |
15 | public bool UseSsl { get; set; } = true;
16 |
17 | public string Username { get; set; } = "";
18 |
19 | public string Password { get; set; } = "";
20 |
21 | public bool IsValid()
22 | {
23 | return !string.IsNullOrEmpty(FromAddress) && !string.IsNullOrEmpty(Host);
24 | }
25 |
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/Intersect (Core)/Factories/IFactory.cs:
--------------------------------------------------------------------------------
1 | namespace Intersect.Factories
2 | {
3 | ///
4 | /// Defines the interface for a factory class.
5 | ///
6 | /// type of the created instances
7 | public interface IFactory
8 | {
9 | ///
10 | /// Creates a not-null instance of given the input .
11 | ///
12 | /// the optional arguments used in creating a
13 | /// a not-null
14 | TValue Create(params object[] args);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/Annotations/EditorEnumAttribute.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.GameObjects.Annotations
4 | {
5 | [AttributeUsage(AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
6 | public class EditorEnumAttribute : EditorDisplayAttribute
7 | {
8 | public EditorEnumAttribute(Type enumType)
9 | {
10 | EnumType = enumType ?? throw new ArgumentNullException(nameof(enumType));
11 |
12 | if (!enumType.IsEnum)
13 | {
14 | throw new ArgumentException($"{enumType.FullName} is not a enum type.", nameof(enumType));
15 | }
16 | }
17 |
18 | public Type EnumType { get; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Intersect (Core)/GameObjects/TilesetBase.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Intersect.Models;
4 |
5 | using Newtonsoft.Json;
6 |
7 | namespace Intersect.GameObjects
8 | {
9 |
10 | public partial class TilesetBase : DatabaseObject
11 | {
12 |
13 | [JsonConstructor]
14 | public TilesetBase(Guid id) : base(id)
15 | {
16 | Name = "";
17 | }
18 |
19 | //Ef Parameterless Constructor
20 | public TilesetBase()
21 | {
22 | Name = "";
23 | }
24 |
25 | public new string Name
26 | {
27 | get => base.Name;
28 | set => base.Name = value?.Trim().ToLower();
29 | }
30 |
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Intersect (Core)/Core/ExperimentalFeatures/IExperimentalFlag.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Intersect.Core.ExperimentalFeatures
4 | {
5 |
6 | public interface IExperimentalFlag : IEquatable
7 | {
8 |
9 | Guid Guid { get; }
10 |
11 | string Name { get; }
12 |
13 | bool Enabled { get; }
14 |
15 | ///
16 | /// Creates a clone of this with the given enablement.
17 | ///
18 | /// the new enablement state
19 | /// a clone of this flag with the new enablement state
20 | IExperimentalFlag With(bool enabled);
21 |
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------