PixelPlanetApi 1.0.3
dotnet add package PixelPlanetApi --version 1.0.3
NuGet\Install-Package PixelPlanetApi -Version 1.0.3
<PackageReference Include="PixelPlanetApi" Version="1.0.3" />
paket add PixelPlanetApi --version 1.0.3
#r "nuget: PixelPlanetApi, 1.0.3"
// Install PixelPlanetApi as a Cake Addin #addin nuget:?package=PixelPlanetApi&version=1.0.3 // Install PixelPlanetApi as a Cake Tool #tool nuget:?package=PixelPlanetApi&version=1.0.3
PixelPlanetApi
A simple library to interact with pixelplanet.fun API
Installation
Install as regular NuGet package:
Install-Package PixelPlanetApi
Usage
Create a PixelPlanetClient instance
PixelPlanetClient client = await PixelPlanetClient.Create();
You can pass HttpClient handler configuration as argument. This allows you to use proxy, cookies etc.
PixelPlanetClient _client = await PixelPlanetClient.Create(h => { h.CookieContainer = new CookieContainer(); h.CookieContainer.Add(new Cookie { Name = "pixelplanet.session", Value = "session", Domain = "pixelplanet.fun", Path = "/", }); });
Use client methods to interact with pixelplanet.fun
Quick examples
Place pixel
Pixel pixel = new Pixel { X = 10000, Y = 5000, Color = 3 }; PixelReturn response = await _client.PlacePixel(0, pixel).ConfigureAwait(false); if (response.ReturnCode == ReturnCode.Success) { // ... }
Register area for tracking and subscribe to PixelChangeEvent to receive updates
Area area = new Area { X1 = 8000, Y1 = 4000, X2 = 15000, Y2 = 6000, CanvasId = 0 }; client.TrackArea(area); client.PixelChangeEvent += (sender, args) => { // ... };
Get chunk data
byte[] data = await client.GetChunkData(11, 22, 0);
Get user statistics
MeResponse me = await _client.FetchMe();
Pay attention to
Canvas
type. It has a lot of useful methods to work with canvas data.Canvas canvas = _client.Canvases[0]; // Earth canvas (byte cx, byte cy) = canvas.GetChunkOfPixel(1000, 1500); // Chunk coordinates for the pixel int offset = GetOffsetOfPixel(2222, 800); // Offset is the count of pixels from the start of chunk. short x = GetAbsoluteCoordinate(10, 200); HashSet<(byte, byte)> areaChunks = canvas.GetChunksForArea(area);
See other PixelPlanetClient public methods. I will try to make more convenient documentation soon
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 12.0.3)
- Websocket.Client (>= 4.3.15)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.