- Added ExplosionType enum (#234)
- Added netstat properties to the
BasePlayerclass (#238)
- Added
Weapon.Suicidedefinition - Added
Color(byte, byte, byte, float)constructor - Changed Dialog.ShowAsync to throw
PlayerDisconnectedExceptioninstead ofTaskCancelledException - Fixed
Dialog.Hidenot working (#212) - Fixed NuGet package referencing invalid build version 0.0.0-localbuild of SampSharp.Core
- Changes for "named pipes" version
- Changed the default virtual world of
TextLabelinstances from -1 to 0, which is the expected behavior - Fixed a bug which caused previous colors and zoom levels in
TextDraw/PlayerTextDrawinstances to be set at every refresh - Fixed a bug which caused
PlayerTextDrawinstances to disappear at odd times - Fixed a possible crash when loading envirionment variables in the plugin
- Fixed a crash during shutdown by disabling unloading DLLs, this consequently also disabled RCON shutdown signals (RCON commands
sampsharpstopandsampsharpstart)
- Added
Matrixstruct - Added
Quaternionstruct - Added
Vector4struct - Added various calcuation methods to the
Vector2andVector3structs andMathHelperclass - Added
AddItemandAddItemsmethods to theListDialogclass - Added support for setting the debugger address and the starting game mode using environment variables
- Fixed a bug which caused the permission system of commands not to work
- Fixed a bug where using the debugger would cause the server to crash on startup
- Fixed a bug where sending an empty string to a native would cause the server to crash
- Fixed random debug messages being displayed in the server output
- Added
NativeObjectSingletonclass for easy access to singleton native object instances - Added mono soft debugger support
- Added a virtual
Initializemethod to all pooled types (BasePlayer, BaseVehicle, etc.). You can override this function to initialize your instance. If you have custom initialization logic in subclasses ofBaseVehicleorGlobalobjectfor example, theIdof the instance will not have been set yet. In these cases, you can overrideInitializeto provide your own initialization logic. - Updated mono to 4.6
- Changed visibility of
LinqHelperandVehicleParameterValueHelperfrom public to internal - Fixed textdraw(global/player) properties not updating properly when changed
- Fixed a bug where the
.Allaccessors of pooled types may cause exceptions when an item is added to it during iteration
If you encounter problems or crashes, please ensure you have installed mono 4.6. If you use the standalone Windows version of mono, you can download an updated version here: http://deploy.timpotze.nl/packages/mono-portable46.zip Simply extract the contents of the archive to your server directory.
- Fixed an error when generating a proxy object for virtual methods for
- Renamed
BasePlayer.GetPlayerLastShotVectorstoBasePlayer.GetLastShot
- Added abstraction layer between interop and implementation
- Added support for using any codepage
- Added server configuration reader
- Added support for boolean reference native argument type
- Added
BaseVehicleFactory - Added system for automatically loading extensions
- Added support for SA-MP 0.3.7R2
- Added a way of automatically loading controllers
- Added
BasePlayer.IsSelectingTextDraw - Added
BasePlayer.GetPlayerLastShotVectors - Added missing documentation
- Added mechanism for extension dependencies
- Rewritten the command processor
- Rewritten the way native calls are handled
- Improved performance of of all pooling types
- Renamed
GtaPlayertoBasePlayer - Renamed
GtaVehicletoBaseVehicle - Renamed
GtaPlayerControllertoBasePlayerController - Renamed
GtaVehicleControllertoBaseVehicleController - Fixed the the diploma font not being available
- Removed setters from Vector2/Vector3
- Added various
Colorconstructors and operators (includingColor * float). - Added
Color.Lerp(),Color.Lighten()andColor.Darken(). - Added
MathHelperclass. - Added
BaseMode.CallbackExceptionevent. This event is raised if an exception has been thrown in a callback without being handled. - Changed sender of menu related events to player.
- Fixed a bug where
Sync.Run()causes aNullReferenceExceptionif called before controllers are loaded. - Fixed a bug where
LogWriter(used by Console.Write) causes buffer overflow errors when handling long strings. - Fixed a bug causing .mdb files not to be loaded properly.
- Fixed a bug in return value conversion of callbacks.
- Fixed a bug where using the build-in MapAndreas might crash the server.
- Added
Dialog.ShowAsync. - Added
InputDialog,ListDialog,MessageDialogandTabListDialogclasses which contain useful methods for it's type of dialog. - Added
Vector2structure. - Updated vehicle parameter setters to use the
VehicleParameterValueto maintain the proper states of other vehicle parameters. - Updated mono API used to 4.0.0. The minimum mono version required is 4.0 now.
- breaking The
Vectorstructure has been renamed toVector3. - Removed
GetHashCodefrom wrapper classes. - Removed
doubleconstructors fromVector3sructure. - Fixed auto loading of empty filterscript (which allows
OnRconCommandto be used) - Fixed a small memory leak in the initialization script in the plugin.
- Fixed a bug where Callnative array throws errors when a
out float[]argument is used. - Fixed
TextEventArgs.SendToPlayers(#118). - (incomplete) Started creating interfaces of wrapper classes.
- Added
GtaPlayer.DefaultClientMessageColor - Added the ability to add commands in a class derived from
GtaPlayerclass without the method having to be static. - Added a basic
IServiceProvidertoBaseModeclass. - Updated for SA-MP 0.3.7:
- Added
Actorclass. - Added constructors to
Dialogclass for tab lists. - Added siren related arguments to
GtaVehicle.CreateandGtaVehicle.CreateStatic. - Added door/window parameter properties and methods to
GtaVehicleclass. - Added various other new methods and properties.
- Added
- Renamed
GtaVehicle.GetParamstoGtaVehicle.GetParameters. - Renamed
GtaVehicle.SetParamstoGtaVehicle.SetParameters. - Added overload of
GtaVehicle.GetParameterswhich properly takes care of the 'unset' (-1) values the parameters may contain. - Removed deprecated methods.
- Removed unused and out-of-date documentation from the
Nativeclass.
- Fixed extensions failing to load before the initialization ended. (Resolves #90)
- Added Native.NativeExists
- Renamed
Color.GetColorFromValueandColor.GetColorValueand addColor.FromString. (Resolves #87) - Renamed Disposable.CheckDisposed to Disposable.AssertNotDisposed
- Improved documentation.
- Improved console messages.
- Improved command system. (Resolves #86 #89 #77)
- Improved build-in MapAndreas. If a suitable MapAndreas plugin is loaded, the plugin is used instead of the build-in logic.
- Fixed PlayerObject and PlayerTextDraw staying in pools after player disconnects (Resolves #82)
- Fixed various memory leaks.
- Fixed various crashes related to calls to custom natives.
- Fixed crashes related to
gmx/Native.GameModeExit().
- Added missing documentation
- Added Bone enumerator
- Add setters to vehicle params Engine, Lights, Alarm, Doors, Bonnet, Boot, Objective
- Updated some methods that used IDs to use objects/enumerators instead
- Updated most events
- Makes most EventArgs classes cleaner
- Removes repeated .Find/.FindOrCreate calls
- Removed logic from Native class. It now only contains external calls.
- Added priorities to keyhandlers
- Added Server.ToggleDebugOutput(toggle) to output Debug.* calls to the console
- Added a number of other functions to the Server class
- Fixed a couple of bugs with timers
- Changed visibility and and names of event raisers in BaseMode class
- Changed various *EventArgs property names and logic
- Improved Sync class and allow make Sync.Run calls awaitable
- Console.* and Debug.* now automatically sync to the main thread when this is required
- Updated sampgdk which resolves some compatibility issues
- Various other improvements and fixes
- Added GtaVehicle.Health property
- Added support for different languages
- Added a per-key press/release handler: GtaPlayer.Key
- Initial version