Bonjour,

tout d'abord, je tiens a m'excuser si ce sujet est mal placé sur le forum ou si ma question est stupide Smiley confused

Voilà l'histoire. Je suis entrain de faire un site pour le serveur minecraft d'un ami. Un plugin appeller JSONapi nous permet de recupérer les informations des joueurs connectés au serveur. Sur le site des devs du plugin, j'ai récupéré le code qui permet de call les informations nécessaires (fichier test qui me permet de récup peu d'info) et ces dernières sont stockées dans un $array.

J'ai donc 2 problèmes:

1) J'aimerai pouvoir connaitre les informations qui sont possibles à récupérer sur les utilisateurs du serveur. Entre autre, je suppose, pouvoir afficher les données dans mon $array

2)
<?php
//affichage du pseudo
echo $result_getPlayers['success'][0]['name']; 
?>


Ce code me permet de récupérer le nom du joueur 0. Le bémol c'est que j'aimerai pouvoir créer une boucle qui récupéreraient les informations de tous les joueurs et pas seulement celui du joueur 0. Et par la suite, bien sur, ajouter d'autres informations que seulement le nom du joueur.

Merci d'avance pour avoir lu et pour vos futures réponses.

Mikeu
Modifié par Mikeu (15 Jul 2013 - 23:44)
Bonsoir,

Pour récupérer la totalité des pseudos en ligne sur le serveur tu peux faire comme ceci :

$getPlayerNames = $api->call('getPlayerNames');

for($i=0;$i<sizeof($getPlayerNames['success']);$i++) {
		
echo $getPlayerNames['success'][$i];
		
}


a écrit :
J'aimerai pouvoir connaitre les informations qui sont possibles à récupérer sur les utilisateurs du serveur. Entre autre, je suppose, pouvoir afficher les données dans mon $array

Avec jsonapi tu peux récupérer presque tous ce que tu souhaite sur le joueurs avec la fonction getPlayer

Cordialement,
Modifié par bootmax (16 Jul 2013 - 00:46)
bootmax a écrit :

Avec jsonapi tu peux récupérer presque tous ce que tu souhaite sur le joueurs avec la fonction getPlayer

Un énorme merci pour m'avoir répondu, ca va beaucoup m'aider. Cela dit, concernant ce que tu as dis, si l'on peut récuperer toutes les donner, comment savoir quelles sont les variables pour le faire ?

Et est-il également possible de récupérer les informations du serveur pour par exemple mettre "En Ligne" "x/200 joueurs" ou ai-je besoin d'un autre plugin ?
Modifié par Mikeu (16 Jul 2013 - 01:02)
Tu fais

$pseudo = "bootmax";
$player = $api->call('getPlayer',array($pseudo));
echo $player['success'][VOIR_PLUS_BAS];


En requête tu as :

Array
(
    [result] => success
    [source] => getPlayer
    [success] => Array
        (
            [whitelisted] => 1
            [firstPlayed] => 1373819987
            [worldInfo] => Array
                (
                    [remainingWeatherTicks] => 23827
                    [hasStorm] => 
                    [time] => 11175
                    [environment] => normal
                    [isThundering] => 
                    [name] => world
                    [fullTime] => 1931175
                )

            [op] => 1
            [location] => Array
                (
                    [yaw] => 35.777466
                    [pitch] => 32.549988
                    [z] => 985.5199128281
                    [y] => 70.019279972537
                    [x] => -843.1122605152
                )

            [exhaustion] => 1.3717852
            [lastPlayed] => 1373928061
            [sleeping] => 
            [enderchest] => Array
                (
                    [0] => 
                    [1] => 
                    [2] => 
                    [3] => 
                    [4] => 
                    [5] => 
                    [6] => 
                    [7] => 
                    [8] => 
                    [9] => 
                    [10] => 
                    [11] => 
                    [12] => 
                    [13] => 
                    [14] => 
                    [15] => 
                    [16] => 
                    [17] => 
                    [18] => 
                    [19] => 
                    [20] => 
                    [21] => 
                    [22] => 
                    [23] => 
                    [24] => 
                    [25] => 
                    [26] => 
                )

            [health] => 20
            [banned] => 
            [ip] => /XXXXXXXX
            [gameMode] => 1
            [inVehicle] => 
            [level] => 0
            [inventory] => Array
                (
                    [hand] => Array
                        (
                            [enchantments] => Array
                                (
                                )

                            [amount] => 1
                            [durability] => 0
                            [type] => 85
                            [dataValue] => 0
                        )

                    [inventory] => Array
                        (
                            [0] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 85
                                    [dataValue] => 0
                                )

                            [1] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 109
                                    [dataValue] => 0
                                )

                            [2] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 4
                                    [durability] => 0
                                    [type] => 69
                                    [dataValue] => 0
                                )

                            [3] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 5
                                    [type] => 44
                                    [dataValue] => 5
                                )

                            [4] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 98
                                    [dataValue] => 0
                                )

                            [5] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 123
                                    [dataValue] => 0
                                )

                            [6] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 271
                                    [dataValue] => 0
                                )

                            [7] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 280
                                    [dataValue] => 0
                                )

                            [8] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 76
                                    [dataValue] => 0
                                )

                            [9] => Array
                                (
                                    [enchantments] => Array
                                        (
                                        )

                                    [amount] => 1
                                    [durability] => 0
                                    [type] => 37
                                    [dataValue] => 0
                                )

                            [10] => 
                            [11] => 
                            [12] => 
                            [13] => 
                            [14] => 
                            [15] => 
                            [16] => 
                            [17] => 
                            [18] => 
                            [19] => 
                            [20] => 
                            [21] => 
                            [22] => 
                            [23] => 
                            [24] => 
                            [25] => 
                            [26] => 
                            [27] => 
                            [28] => 
                            [29] => 
                            [30] => 
                            [31] => 
                            [32] => 
                            [33] => 
                            [34] => 
                            [35] => 
                        )

                    [armor] => Array
                        (
                            [helmet] => 
                            [boots] => 
                            [leggings] => 
                            [chestplate] => 
                        )

                )

            [name] => bootmax
            [foodLevel] => 18
            [experience] => 4
            [itemInHand] => Array
                (
                    [enchantments] => Array
                        (
                        )

                    [amount] => 1
                    [durability] => 0
                    [type] => 85
                    [dataValue] => 0
                )

            [sneaking] => 
            [world] => 0
            [sprinting] => 
        )

)

Modifié par bootmax (16 Jul 2013 - 01:18)
Merci bootmax.

Par contre, j'ai beaucoup de missing images dans ton deuxieme code donc je vais avoir du mal à le copier :> . Et je ne sais pas si tu as vu, j'ai edit mon post par rapport au serveur.
Tiens pour le code mal affiché : http://pastebin.com/pUnNs6t8

Pour afficher l'état du serveur :


$getPlayerCount = $api->call('getPlayerCount');
$getPlayerLimit = $api->call('getPlayerLimit');

if(!isset($getPlayerCount['success']) && !isset($getPlayerLimit['success'])) {
echo "<p style='font-size : 14px; color : red;'>Le serveur est actuellement indisponible.</p>";
} else {
echo "<p style='font-size : 14px; color : green;'>En ligne</p>";
}

echo $getPlayerCount['success'] . "/" .$getPlayerLimit['success'];

Modifié par bootmax (16 Jul 2013 - 01:17)
Je ne sais pas comment te remercier tellement tu m'as aidé. Je vais profiter un peu plus de ta gentillesse en te demandant comment on pourrait récupérer par exemple la tête du skin d'un joueur pour la mettre à la place du nom Smiley confused

$getPlayerCount = $api->call('getPlayerCount'); // Nombres de joueurs en ligne
$getPlayerLimit = $api->call('getPlayerLimit'); // Nombres de slots du serveur
$getPlayerNames = $api->call('getPlayerNames'); // Liste des personnes en ligne

if(!isset($getPlayerCount['success']) && !isset($getPlayerLimit['success'])) {
echo "<p style='font-size : 14px; color : red;'>Le serveur est actuellement indisponible.</p>";
} else {
echo "<p style='font-size : 14px; color : green;'>En ligne</p>";

// Nombres de joueurs / Nombres de slots du serveur
echo $getPlayerCount['success'] . "/" .$getPlayerLimit['success'];

echo "<br />Joueurs en ligne : <br />";

for($i=0;$i<sizeof($getPlayerNames['success']);$i++) {
		
echo "<img alt='" . $getPlayerNames['success'][$i] . "' title='" . $getPlayerNames['success'][$i] . "' src='https://minotar.net/avatar/" . $getPlayerNames['success'][$i] . "/20'>";
		
}
}

Modifié par bootmax (16 Jul 2013 - 01:26)
Je ne sais pas si c'est très approprié mais... je t'aime ! Merci énormément pour le temps que tu as passé a m'aider !!!