Skip to content

Instantly share code, notes, and snippets.

@novia713
Last active September 6, 2019 10:51
Show Gist options
  • Save novia713/48707d9a6fbddbe769f08dce7e93be6c to your computer and use it in GitHub Desktop.
Save novia713/48707d9a6fbddbe769f08dce7e93be6c to your computer and use it in GitHub Desktop.
<?php
// © leandro@leandro.org 20190504
//
$battle_url = "https://www.mythereum.io/api/games/";
$player_url = "https://mythereum.io/api/players/";
$my_print= function($txt){
echo "$txt\n";
};
$my_pprint= function($txt){
print_r ($txt);
};
$get_card_names = function($hand) {
return implode("\n", array_column($hand, "name"));
};
$get_winner_header_name = function($name) use ($my_print){
system('clear');
$winner_str = "Winner deck: $name";
$my_print($winner_str);
$n = strlen($winner_str);
$my_print(str_repeat('=', $n));
};
$get_finalist_header_name = function($name) use ($my_print){
$winner_str = "Finalist deck: $name";
$my_print("\n". $winner_str);
$n = strlen($winner_str);
$my_print(str_repeat('=', $n));
};
$get_winner_username = function($p0, $p1, $bat_json) use ($player_url){
return ($p0 == $bat_json->winner)?
json_decode(file_get_contents($player_url . $p0))->username:
json_decode(file_get_contents($player_url . $p1))->username;
};
$get_finalist_username = function($p0, $p1, $bat_json) use ($player_url){
return ($p0 == $bat_json->winner)?
json_decode(file_get_contents($player_url . $p1))->username:
json_decode(file_get_contents($player_url . $p0))->username;
};
$get_winner_id = function($p0, $p1, $bat_json) use ($player_url){
return ($p0 == $bat_json->winner)?
0:
1;
};
$get_finalist_id = function($p0, $p1, $bat_json) use ($player_url){
return ($p0 == $bat_json->winner)?
1:
0;
};
$print_stats= function($ps, $hp, $m) use ($my_print){
$my_print("=== PS: $ps == HP: $hp == MAG: $m ===\n");
};
$battle_id = readline("Enter battle ID: ");
$battle_json = json_decode( file_get_contents($battle_url . $battle_id) );
$player_0 = $battle_json->players[0];
$player_1 = $battle_json->players[1];
//$my_print($get_winner_username($player_0, $player_1, $battle_json));
$hand_0 = $battle_json->meta->initialState->hands->$player_0;
$deck_0 = $battle_json->meta->initialState->decks->$player_0->cards;
$magick_0 = floor($battle_json->meta->initialState->decks->$player_0->score->magick);
$hp_0 = floor($battle_json->meta->initialState->healthPoints->$player_0);
$ps_0 = number_format($battle_json->meta->initialState->decks->$player_0->score->overall, 2);
$hand_1 = $battle_json->meta->initialState->hands->$player_1;
$deck_1 = $battle_json->meta->initialState->decks->$player_1->cards;
$magick_1 = floor($battle_json->meta->initialState->decks->$player_1->score->magick);
$hp_1 = floor($battle_json->meta->initialState->healthPoints->$player_1);
$ps_1 = number_format($battle_json->meta->initialState->decks->$player_1->score->overall, 2);
$player_0_cardnames = ($get_card_names($hand_0) . $get_card_names($deck_0));
$player_1_cardnames = ($get_card_names($hand_1) . $get_card_names($deck_1));
$get_winner_header_name($get_winner_username($player_0, $player_1, $battle_json));
$my_print(${"player_" . $get_winner_id($player_0, $player_1, $battle_json) . "_cardnames"});
$print_stats(
${"ps_" . $get_winner_id($player_0, $player_1, $battle_json)},
${"hp_" . $get_winner_id($player_0, $player_1, $battle_json)},
${"magick_" . $get_winner_id($player_0, $player_1, $battle_json)}
);
$get_finalist_header_name($get_finalist_username($player_0, $player_1, $battle_json));
$my_print(${"player_" . $get_finalist_id($player_0, $player_1, $battle_json) . "_cardnames"});
$print_stats(
${"ps_" . $get_finalist_id($player_0, $player_1, $battle_json)},
${"hp_" . $get_finalist_id($player_0, $player_1, $battle_json)},
${"magick_" . $get_finalist_id($player_0, $player_1, $battle_json)}
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment