https://gamejolt.com
Esta biblioteca fornece cobertura completa (exceto lote) da API do Game Jolt (troféus, pontuações, sessões, etc...). No momento, esta biblioteca foi escrita e testada para v1.2 da API do Game Jolt.
$ composer require " harrk/gamejolt-api "
Crie uma instância do GamejoltApi e forneça um GamejoltConfig para começar a fazer chamadas de API para o Game Jolt.
$ gameId = 0 ; // Your game's ID
$ gamePrivaykey = " Your game's private key " ;
$ api = new GamejoltApi ( new GamejoltConfig (
$ gameId ,
$ gamePrivaykey
));
Abaixo estão exemplos de como você interagiria com cada endpoint. Tenha em mente que estes são apenas exemplos e podem não usar todas as opções de parâmetros.
Consulte a documentação da API Game Jolt ou o código-fonte para obter mais opções.
A API Data Store pode ser usada para armazenar/recuperar dados na nuvem.
// 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 ();
A API de amigos só pode ser usada para encontrar os IDs de amigos do usuário atualmente.
// 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 ' );
Aqui está um exemplo de como capturar exceções:
try {
$ auth = $ api -> users ()-> auth ( ' username ' , ' user_token ' );
} catch ( TimeOutException $ e ) {
return redirect ()-> route ( ' home ' )-> with ( ' error ' , $ e -> getMessage ());
}
Dois comandos foram fornecidos para simplificar a execução de testes.
Execute testes de unidade
$ composer test
Execute a análise estática de código
$ composer analyse
Licença MIT