steam_ugc_create_item(consumer_app_id, file_type);
| Argument | La description |
|---|---|
| consumer_app_id | L'identifiant unique de l'application pour votre jeu sur Steam. |
| file_type | Une des constantes de type de fichier disponibles (répertoriées ci-dessous). |
Renvoie: Async ID
Cette fonction est utilisée pour préparer l'API Workshop et générer un ID de fichier publié pour l'élément à ajouter. La fonction doit être appelée avant de faire quoi que ce soit d'autre avec l'élément à télécharger, car vous devrez utiliser la valeur d'ID publiée unique qu'elle renvoie dans l'événement Steam Async pour la mise à jour. Pour utiliser cette fonction, vous devez fournir l'identifiant de l'application Steam pour votre jeu, et utiliser l'une des constantes suivantes pour le jeu. file_type argument:
| Constant | La description |
|---|---|
| ugc_filetype_community | Ceci est utilisé pour créer des fichiers qui seront téléchargés et mis à la disposition de tous les membres de la communauté. |
| ugc_filetype_microtrans | Ceci est utilisé pour décrire les fichiers téléchargés mais destinés uniquement au jeu à considérer comme un contenu officiel. |
Lors de l'utilisation de cette fonction, elle renvoie une valeur d'identifiant asynchrone qui peut ensuite être analysée lorsque l'événement Steam Asynchronous est déclenché pour signaler la création de l'élément. L'événement contiendra les valeurs de clé / carte suivantes dans async_load ds_map:
- " id " - L'identifiant asynchrone renvoyé par la fonction d'appel
- " résultat " - Le résultat de l'opération (une valeur réelle). Ce sera soit la constante GML ugc_result_success ou un autre nombre réel. Vous devriez donc vérifier cette constante pour vous assurer que l'appel a réussi et, dans le cas contraire, que quelque chose n'a pas fonctionné correctement. Le reste des valeurs possibles renvoyées sont affichées comme le résultat de la valeur Steam "EResult" et vous devriez voir steamclientpublic.h dans les en-têtes SDK pour toutes les 89 valeurs possibles.
- " event_type " - Cette clé contiendra la valeur " ugc_create_item "
- " legal_agreement_required " - Sera true ou false (Voir les documents Steam pour plus de détails)
- " published_file_id " - Cette clé contient l'ID publié unique de l'élément
Dans cet exemple, nous appelons d'abord la fonction et stockons la valeur de l'identifiant asynchrone dans une variable:
var app_id = steam_get_app_id();
new_item = steam_ugc_create_item(app_id,
ugc_filetype_community);
Cela enverrait alors une demande à l'API Steam pour créer le nouvel élément Worksop, générant un événement asynchrone que nous traiterions comme suit:
var event_id = async_load[? "id"];
if event_id == new_item
{
var type = async_load[? "event_type"];
if type == "ugc_create_item"
{
global.Publish_ID =
async_load[? "published_file_id"];
}
}
Le code ci-dessus vérifie le type d'événement et s'il est "ugc_create_item" alors il récupère l'ID de fichier publié et le stocke dans une variable globale pour référence future.