facebook_dialog(graph_path, ds_map_parameters, ds_map_return)
Argument La description graph_path La partie du graphe social à interagir avec ds_map_parameters Le ds_map avec les informations à envoyer. ds_map_return Le ds_map à recevoir (-1 pour none).
N/A
Une boîte de dialogue Facebook est la façon dont Facebook demande à l'utilisateur de donner des commentaires et des informations et il n'a pas besoin d'autorisations supplémentaires, car elles nécessitent une interaction de l'utilisateur. Par exemple, il peut être utilisé pour envoyer une demande d'ami ou pour poster un commentaire sur un mur. L'argument "graph_path" est l'endroit où vous définissez la partie du graphique à laquelle vous souhaitez accéder, et le chemin exact peut être défini en utilisant les termes décrits dans la Vue d'ensemble des dialogues de Facebook.
L'argument suivant est légèrement plus complexe car il nécessite que vous ayez créé et rempli un ds_map avec les informations correctes que GameMaker Studio 2 va ensuite convertir en json automatiquement lorsqu'il est envoyé à l'Api Facebook. Les informations que vous mettez dans cette carte dépendront beaucoup du chemin que vous choisissez d'utiliser et une liste complète de toutes les valeurs possibles peut être trouvée ici. Un exemple de la structure de cette carte peut être vu dans l'exemple de code fourni ci-dessous.
Enfin, nous avons un argument pour stocker toutes les informations que Facebook a renvoyées à partir de la requête graphique. Cette information vient sous la forme de json quel GameMaker Studio 2 convertit en un ds_map. Pour que cela fonctionne correctement, vous devez avoir préalablement créé une carte ds_map, et si cette carte a été utilisée ailleurs et contient déjà des paires clé / valeur, elle sera effacée par cette fonction avant l'ajout des données Facebook. Il est très important que vous lisiez la documentation Facebook sur les valeurs de retour possibles afin que vous sachiez exactement à quoi vous attendre. Heureusement, Facebook a une page de test Graph Api où vous pouvez vérifier les différents chemins graphiques et voir exactement quelles informations ils vont retourner.
REMARQUE: L'utilisateur n'a pas besoin d'être connecté pour utiliser cette fonction car la boîte de dialogue de connexion sera affichée dans le cadre de la demande de dialogue.
var interactiveMap;
interactiveMap = ds_map_create();
ds_map_add(interactiveMap, "picture",
"http://MacSweeneygames.com/Clown.jpg");
ds_map_add(interactiveMap, "link",
"http://MacSweeneygames.com/");
ds_map_add(interactiveMap, "name", "Catch The Clown");
ds_map_add(interactiveMap, "caption", "MacSweeneygames.com");
ds_map_add(interactiveMap, "description", "Play Catch the clown now
on MacSweeney Games!");
facebook_dialog("feed", interactiveMap, -1);
ds_map_destroy(interactiveMap);
Le code ci-dessus va créer un ds_map et stocker son index dans la variable locale "interactiveMap". Cette carte est ensuite remplie avec les paires clé / valeur nécessaires pour générer un poteau mural interactif. Suivant le facebook_dialog ouvrira une fenêtre demandant à l'utilisateur d'ajouter un message à envoyer avec le reste de l'information et tout cela sera publié sur le mur des utilisateurs. Enfin, le fichier ds_map est supprimé pour libérer de la mémoire.