mirror of
https://github.com/Facepunch/Facepunch.Steamworks.git
synced 2024-12-25 06:05:46 +03:00
Update README.md
This commit is contained in:
parent
26b79db7e4
commit
a80ee82e53
145
README.md
145
README.md
@ -53,14 +53,6 @@ foreach ( var friend in SteamFriends.GetFriends() )
|
||||
}
|
||||
```
|
||||
|
||||
But what if you want to get a list of friends playing the same game that we're playing?
|
||||
|
||||
```csharp
|
||||
foreach ( var friend in client.Friends.All.Where( x => x.IsPlayingThisGame ) )
|
||||
{
|
||||
//
|
||||
}
|
||||
```
|
||||
|
||||
### App Info
|
||||
|
||||
@ -117,7 +109,6 @@ ach.Trigger();
|
||||
### Voice
|
||||
|
||||
```csharp
|
||||
|
||||
SteamUser.VoiceRecord = KeyDown( "V" );
|
||||
|
||||
if ( SteamUser.HasVoiceData )
|
||||
@ -125,18 +116,15 @@ if ( SteamUser.HasVoiceData )
|
||||
var bytesrwritten = SteamUser.ReadVoiceData( stream );
|
||||
// Send Stream Data To Server or Something
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
|
||||
### Auth
|
||||
|
||||
```csharp
|
||||
|
||||
// Client sends ticket data to server somehow
|
||||
var ticket = SteamUser.GetAuthSessionTicket();
|
||||
|
||||
|
||||
// server listens to event
|
||||
SteamServer.OnValidateAuthTicketResponse += ( steamid, ownerid, rsponse ) =>
|
||||
{
|
||||
@ -158,7 +146,6 @@ if ( !SteamServer.BeginAuthSession( ticketData, clientSteamId ) )
|
||||
// this time with AuthResponse.AuthTicketCanceled
|
||||
//
|
||||
ticket.Cancel();
|
||||
|
||||
```
|
||||
|
||||
### Utils
|
||||
@ -175,7 +162,137 @@ SteamUtils.IsSteamRunningInVR;
|
||||
SteamUtils.IsSteamInBigPictureMode;
|
||||
```
|
||||
|
||||
# Usage
|
||||
### Workshop
|
||||
|
||||
Download a workshop item by ID
|
||||
|
||||
```csharp
|
||||
SteamUGC.Download( 1717844711 );
|
||||
```
|
||||
|
||||
Get a workshop item information
|
||||
|
||||
```csharp
|
||||
var itemInfo = await Ugc.Item.Get( 1720164672 );
|
||||
|
||||
Console.WriteLine( $"Title: {itemInfo?.Title}" );
|
||||
Console.WriteLine( $"IsInstalled: {itemInfo?.IsInstalled}" );
|
||||
Console.WriteLine( $"IsDownloading: {itemInfo?.IsDownloading}" );
|
||||
Console.WriteLine( $"IsDownloadPending: {itemInfo?.IsDownloadPending}" );
|
||||
Console.WriteLine( $"IsSubscribed: {itemInfo?.IsSubscribed}" );
|
||||
Console.WriteLine( $"NeedsUpdate: {itemInfo?.NeedsUpdate}" );
|
||||
Console.WriteLine( $"Description: {itemInfo?.Description}" );
|
||||
```
|
||||
|
||||
Query a list of workshop items
|
||||
|
||||
```csharp
|
||||
var q = Ugc.Query.All
|
||||
.WithTag( "Fun" )
|
||||
.WithTag( "Movie" )
|
||||
.MatchAllTags();
|
||||
|
||||
var result = await q.GetPageAsync( 1 );
|
||||
|
||||
Console.WriteLine( $"ResultCount: {result?.ResultCount}" );
|
||||
Console.WriteLine( $"TotalCount: {result?.TotalCount}" );
|
||||
|
||||
foreach ( Ugc.Item entry in result.Value.Entries )
|
||||
{
|
||||
Console.WriteLine( $" {entry.Title}" );
|
||||
}
|
||||
```
|
||||
|
||||
Query items created by friends
|
||||
|
||||
```csharp
|
||||
var q = Ugc.UserQuery.All
|
||||
.CreatedByFriends();
|
||||
```
|
||||
|
||||
Query items created by yourself
|
||||
|
||||
```csharp
|
||||
var q = Ugc.UserQuery.All
|
||||
.FromSelf();
|
||||
```
|
||||
|
||||
Publish your own file
|
||||
|
||||
```csharp
|
||||
var result = await Ugc.Editor.NewCommunityFile
|
||||
.WithTitle( "My New FIle" )
|
||||
.WithDescription( "This is a description" )
|
||||
.WithContent( "c:/folder/addon/location" )
|
||||
.WithTag( "awesome" )
|
||||
.WithTag( "small" )
|
||||
.SubmitAsync( iProgressBar );
|
||||
```
|
||||
|
||||
### Steam Cloud
|
||||
|
||||
Write a cloud file
|
||||
|
||||
```csharp
|
||||
SteamRemoteStorage.FileWrite( "file.txt", fileContents );
|
||||
```
|
||||
|
||||
Read a cloud file
|
||||
|
||||
```csharp
|
||||
var fileContents = SteamRemoteStorage.ReadFile( "file.txt" );
|
||||
```
|
||||
|
||||
List all files
|
||||
|
||||
```csharp
|
||||
foreach ( var file in SteamRemoteStorage.Files )
|
||||
{
|
||||
Console.WriteLine( $"{file} ({SteamRemoteStorage.FileSize(file)} {SteamRemoteStorage.FileTime( file )})" );
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
### Steam Inventory
|
||||
|
||||
Get item definitions
|
||||
|
||||
```csharp
|
||||
foreach ( InventoryDef def in SteamInventory.Definitions )
|
||||
{
|
||||
Console.WriteLine( $"{def.Name}" );
|
||||
}
|
||||
```
|
||||
|
||||
Get items that are for sale in the item shop
|
||||
|
||||
```csharp
|
||||
var defs = await SteamInventory.GetDefinitionsWithPricesAsync();
|
||||
|
||||
foreach ( var def in defs )
|
||||
{
|
||||
Console.WriteLine( $"{def.Name} [{def.LocalPriceFormatted}]" );
|
||||
}
|
||||
```
|
||||
|
||||
Get a list of your items
|
||||
|
||||
```csharp
|
||||
var result = await SteamInventory.GetItems();
|
||||
|
||||
// result is disposable, good manners to dispose after use
|
||||
using ( result )
|
||||
{
|
||||
var items = result?.GetItems( bWithProperties );
|
||||
|
||||
foreach ( InventoryItem item in items )
|
||||
{
|
||||
Console.WriteLine( $"{item.Id} / {item.Quantity} / {item.Def.Name} " );
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
# Getting Started
|
||||
|
||||
## Client
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user