Compare commits

..

No commits in common. "61de35ed4f01fae7a2ac99d7ccd50005067b874f" and "9c353cc6e5444bd1a581c510a1c322c449ce99fb" have entirely different histories.

9 changed files with 52 additions and 100 deletions

View File

@ -12,6 +12,3 @@ vous connecter au serveur MySQL via `docker exec -it game_mariadb_1 mysql --user
et récupérer votre jeton d'activation via `select id_activ from user_inscriptions WHERE pseudo LIKE 'VOTRE_PSEUDO_A_REMPLACER';` et récupérer votre jeton d'activation via `select id_activ from user_inscriptions WHERE pseudo LIKE 'VOTRE_PSEUDO_A_REMPLACER';`
une fois l'ID récupérer, rendez-vous à l'adresse http://localhost:8080/?p=validation&i=VOTRE_ID (pensez une fois l'ID récupérer, rendez-vous à l'adresse http://localhost:8080/?p=validation&i=VOTRE_ID (pensez
bien à modifier l'id dans l'URL). bien à modifier l'id dans l'URL).
## Installer
Un cron doit être rajouté sur la machine hôte pour calculer le classement des joueurs, en éxécutant le fichier `cron/classement.php` aussi souvent qu'il vous plaira (ou aussi souvent que votre CPU le permettra).

View File

@ -1,16 +0,0 @@
<?php
// Ce cron met à jour le classement des joueurs.
//Définition de la constante anti-hacking
define("INDEX", 1);
define("DEBUG", false);
//Inclusion de l'API Onyx
require_once(__DIR__ . "/../onyx2/load.php");
require_once("common.php");
$bdd = new BDD();
$updated = $bdd->update_classement();
$bdd->deconnexion();

View File

@ -28,7 +28,6 @@ services:
volumes: volumes:
- ./htdocs:/usr/src/hb-main/htdocs:rw - ./htdocs:/usr/src/hb-main/htdocs:rw
- ./onyx2:/usr/src/hb-main/onyx2:rw - ./onyx2:/usr/src/hb-main/onyx2:rw
- ./cron:/usr/src/hb-main/cron:rw
# make cache and compile writable + don't add file to local host # make cache and compile writable + don't add file to local host
- /usr/src/hb-main/onyx2/cache - /usr/src/hb-main/onyx2/cache
- /usr/src/hb-main/onyx2/log - /usr/src/hb-main/onyx2/log

View File

@ -288,7 +288,7 @@ class FileTerrestre extends FileCommun implements File
} else { } else {
$temps_moins = 0; $temps_moins = 0;
} }
$out[$keyF][$keyE] = array($element[0], $element[1], $element[2], ceil($temps * $element[1] - $temps_moins), ceil($temps - $temps_moins), $prems, dTerrestre::type($element[0], $planete)); $out[$keyF][$keyE] = array($element[0], $element[1], $element[2], ceil($temps * $element[1] - $temps_moins), ceil($temps - $temps_moins), $prems, dTerrestre::type($element[0]));
} else { } else {
$temps = dTerrestre::temps($element[0], 1, $planete); $temps = dTerrestre::temps($element[0], 1, $planete);
if ($prems) { if ($prems) {
@ -296,7 +296,7 @@ class FileTerrestre extends FileCommun implements File
} else { } else {
$temps_moins = 0; $temps_moins = 0;
} }
$out[$keyF][$keyE] = array($element[0], $element[1], $element[2], ceil($temps * $element[1] - $temps_moins), ceil($temps - $temps_moins), $prems, dTerrestre::type($element[0], $planete)); $out[$keyF][$keyE] = array($element[0], $element[1], $element[2], ceil($temps * $element[1] - $temps_moins), ceil($temps - $temps_moins), $prems, dTerrestre::type($element[0]));
} }
$prems = false; $prems = false;
} }

View File

@ -322,8 +322,8 @@ class Planete extends Surface
//Surlogement //Surlogement
//Effets des batiments modules résidentiels, centre commercials et centre de loisir //Effets des batiments loisirs et commerces
$this->moral += 0.0010*$this->batiments[12] + 0.0025*$this->batiments[15] + 0.1*$this->batiments[16]; $this->moral += 0.0025*$this->batiments[15] + 0.1*$this->batiments[16];
//Ajustement du moral en fonction de la politique //Ajustement du moral en fonction de la politique
if ($this->politique == 1 && $this->moral > 0.7) { if ($this->politique == 1 && $this->moral > 0.7) {

View File

@ -113,7 +113,6 @@ class User
public function addPoints($metal, $cristal, $hydrogene, $credits = 0, $demolition = false) public function addPoints($metal, $cristal, $hydrogene, $credits = 0, $demolition = false)
{ {
/* Ancien code, fait des calculs boursier dans le système de points, wtf ?
global $table_bourse_ressources; global $table_bourse_ressources;
//On charge les 3 valeurs boursières //On charge les 3 valeurs boursières
$bdd = new BDD(); $bdd = new BDD();
@ -130,11 +129,6 @@ class User
$points = bourse_calcPrixBase($bourse[0]["dispo"], $metal); $points = bourse_calcPrixBase($bourse[0]["dispo"], $metal);
$points += bourse_calcPrixBase($bourse[1]["dispo"], $cristal); $points += bourse_calcPrixBase($bourse[1]["dispo"], $cristal);
$points += bourse_calcPrixBase($bourse[2]["dispo"], $hydrogene); $points += bourse_calcPrixBase($bourse[2]["dispo"], $hydrogene);
*/
$rate = 0.7;
$points = $metal *$rate;
$points += $cristal *$rate;
$points += $hydrogene *$rate;
if ($demolition) { if ($demolition) {
$this->points -= intval($points); $this->points -= intval($points);

View File

@ -50,9 +50,7 @@ if ($cached['check'] == md5_file(ONYX.'config/root.xml').md5_file(ONYX.'modules/
//$xml->validate(); //$xml->validate();
if ($root = $xml->documentElement->getAttribute('root')) { if ($root = $xml->documentElement->getAttribute('root')) {
// Autorise les fichiers dans les dossiers htdocs/ et cron/ if ($root == substr(FILE, 0, strlen($root))) {
$cron = str_replace("htdocs", "cron", $root);
if ($root == substr(FILE, 0, strlen($root)) || $cron == substr(FILE, 0, strlen($cron))) {
define('ROOT', $root); define('ROOT', $root);
$search = substr(FILE, strlen($root)); $search = substr(FILE, strlen($root));

View File

@ -193,14 +193,4 @@ class BDD
return mysqli_affected_rows($this->session); return mysqli_affected_rows($this->session);
} }
public function update_classement()
{
if (!$this->session) {
return false;
}
global $table_user;
$query = "SET @p=0; UPDATE $table_user SET place_points = (@p:=@p+1) ORDER BY points DESC;";
mysqli_multi_query($this->session, $query);
}
} }

View File

@ -196,14 +196,4 @@ class BDD
return pg_affected_rows($this->reponse); return pg_affected_rows($this->reponse);
} }
public function update_classement()
{
if (!$this->session) {
return false;
}
global $table_user;
$query = "UPDATE $table_user SET place_points=subquery.rn FROM (SELECT id, points, place_points, row_number() over (order by points DESC) as rn FROM $table_user) AS subquery WHERE $table_user.id=subquery.id;";
pg_query($this->session, $query);
}
} }