https://gamejolt.com
Cette bibliothèque fournit une couverture complète (sauf batch) de l'API de Game Jolt (Trophées, scores, sessions, etc...). Pour le moment, cette bibliothèque est écrite et testée pour la v1.2 de l'API de Game Jolt.
$ composer require " harrk/gamejolt-api "
Créez une instance de GamejoltApi et fournissez un GamejoltConfig pour commencer à passer des appels d'API à Game Jolt.
$ gameId = 0 ; // Your game's ID
$ gamePrivaykey = " Your game's private key " ;
$ api = new GamejoltApi ( new GamejoltConfig (
$ gameId ,
$ gamePrivaykey
));
Vous trouverez ci-dessous des exemples de la façon dont vous interagiriez avec chaque point de terminaison. Gardez à l’esprit que ce ne sont que des exemples et qu’ils peuvent ne pas utiliser toutes les options de paramètres.
Reportez-vous à la documentation de l'API Game Jolt ou au code source pour plus d'options.
L'API Data Store peut être utilisée pour stocker/récupérer des données dans le cloud.
// Fetch the value for my-key
$ api -> dataStore ()-> fetch ( ' my-key ' );
// Set the value for my-key to my-value
$ api -> dataStore ()-> set ( ' my-key ' , ' my-value ' );
// Update player-logins by 1
$ api -> dataStore ()-> update ( ' player-logins ' , DataStore:: OPERATION_ADD , 1 );
// Remove my-key
$ api -> dataStore ()-> remove ( ' my-key ' );
// Fetch all keys
$ api -> dataStore ()-> getKeys ();
L'API Friends ne peut actuellement être utilisée que pour trouver les identifiants d'ami de l'utilisateur.
// Fetch all friend ids for the user
$ api -> friends ()-> fetch ( ' username ' , ' user-token ' );
//Fetch scores
$ api -> scores ()-> fetch ();
//Fetch all score tables
$ api -> scores ()-> tables ();
//Add a gamejolt user's score to the table
$ api -> scores ()-> addUserScore ( ' username ' , ' user_token ' , ' 100 Jumps ' , 100 );
//Add a guest's score to the table
$ api -> scores ()-> addGuestScore ( ' Mr Guest ' , ' 50 jumps ' , 50 );
//Get score rank
$ api -> scores ()-> getRank ( 60 );
//Open a session for the given user
$ api -> sessions ()-> open ( ' username ' , ' user_token ' );
//Let GJ know the user session is still active
$ api -> sessions ()-> ping ( ' username ' , ' user_token ' , Sessions:: STATUS_ACTIVE );
//Check if the session is still open for user
$ api -> sessions ()-> check ( ' username ' , ' user_token ' );
//Close the session for user
$ api -> sessions ()-> close ( ' username ' , ' user_token ' );
//Get GJ's server time
$ api -> time ()-> fetch ();
//Get all trophies
$ api -> trophies ()-> fetch ( ' username ' , ' user_token ' );
//User has achieved a trophy with ID 1
$ api -> trophies ()-> addAchieved ( ' username ' , ' user_token ' , 1 );
//User unachieved trophy with ID 1
$ api -> trophies ()-> removeAchieved ( ' username ' , ' user_token ' , 1 );
//Fetch data on user
$ api -> users ()-> fetch ( ' username ' , ' user_token ' );
//Verify if the user's credentials are correct
$ api -> users ()-> auth ( ' username ' , ' user_token ' );
Voici un exemple sur la façon de détecter les exceptions :
try {
$ auth = $ api -> users ()-> auth ( ' username ' , ' user_token ' );
} catch ( TimeOutException $ e ) {
return redirect ()-> route ( ' home ' )-> with ( ' error ' , $ e -> getMessage ());
}
Deux commandes ont été fournies pour simplifier l'exécution des tests.
Exécuter des tests unitaires
$ composer test
Exécuter une analyse de code statique
$ composer analyse
Licence MIT