Skip to content

0.9.0

Compare
Choose a tag to compare
@ikkentim-bot ikkentim-bot released this 25 Jan 13:13
· 180 commits to master since this release

SampSharp plugin

  • Updated sampgdk to 4.6.2
  • Changed maximum native arguments to 64
  • Fixed server in multi-process run mode freezing when calling native which calls a callback which calls a native
  • Fixed intermission script getting stuck between runs

SampSharp.Core

  • Added IGameModeClient.RegisterCallback overloads which allows the arguments of the callback to be provided as an object[] to the specified method
  • Added option to specify the index at which the identifier arguments are located within natives of native objects
  • Added notice to multi-process run mode: "for development purposes only", use hosted hosted mode for production environments
  • Added callback name to the IGameModeClient.UnhandledException event
  • Added unhandled exception handling in hosted mode
  • Added unhandled exception handling in multi-process mode for ticks and synchronisations
  • Added IfHosted and IfMultiProcess methods to GameModeBuilder
  • Updated minimum .NET Standard version to 2.0
  • Improved shutdown behaviour of multi-process run mode
  • Improved number of memory allocations during handling of callbacks and native calls in hosted run mode
  • Changed hosted mode to not automatically redirect console output to the server_log.txt, use GameModeBuilder.RedirectConsoleOutput() to reenable logging to the server log
  • Removed GameModeBuilder.BuildWith
  • Fixed GameModeBuilder.RedirectConsoleOutput causing errors during startup in multi-process mode
  • Fixed garbage strings being returned when no string is set to out string parameters (#323)

SampSharp.GameMode

  • Added Vector3.XY which returns a Vector2 with the x and y components (#299/#300)
  • Added Color.Brightness property (#309)
  • Added Color.AddGrammaCorrection, Color.RemoveGammaCorrection, Color.Grayscale methods (#309)
  • Added blendAlpha option to Color.Lerp, Color.Darken and Color.Lighten (#305/#310)
  • Added Timer.Run and Timer.RunOnce overloads with an int or double internal in miliseconds. (#315)
  • Added BasePlayer.PickUpPickup event (#319)
  • Added BasePlayer.CameraTargetPlayerObject (#320)
  • Added BasePlayer.SurfingPlayerObject (#324)
  • Added Server.GetServerTickRate (#295)
  • Added automatic detection for command and command group names (#273)
  • Added command parameter attribute NullableParam to indicate a BasePlayer or BaseVehicle argument is allowed to be null, enum values can be marked as nullable by using nullable enums like VehicleModelType? (#268/#290)
  • Added Server.GetWeaponName (#311)
  • Added CommandAttribute.IsGroupHelp, if this value is true, the command will run if the command group is entered by the player without a specified command in the command group
  • breaking Added PlayerCancelClickTextDraw event which is called when player presses ESC while selecting textdraws, PlayerClickTextDraw is no longer called when ESC is pressed (#304/#321)
  • Updated VehicleModelInfo to include seat count and a missing entry for ID 611, Utility Trailer (#302)
  • Updated minimum .NET Standard version to 2.0
  • breaking Changed BasePlayer.CameraTargetObject to BasePlayer.CameraTargetGlobalObject (#320)
  • breaking Changed BasePlayer.SurfingObject to BasePlayer.SurfingGlobalObject (#324)
  • breaking Changed BaseMode.PlayerPickUp event to have event arguments of type PickUpPickupEventArgs and changed the sender of event from the pickup to the player (#319)
  • breaking Changed Pickup.PickUp event to have event arguments of type PickUpPickupEventArgs (#319)
  • Fixed Quaternion coordinate system not matching SA-MP coordinate system
  • Fixed Edited and Selected on GlobalObject and PlayerObject not being fired (#303/#306)
  • Fixed Color.FromInteger with ColorFormat.RGB returning a value with 0 alpha
  • Fixed conversion from Color to Vector3 not returning decimal values
  • Fixed enum numeric values not being recognized as an command argument if an enum value name contains the numeric value (#274)
  • breaking Removed ObjectModel enum because it was too big and might not be complete

SampSharp.Entities

  • Initial version