Version 1.13a
This commit is contained in:
parent
de31cd3e9a
commit
ba8f323879
1634 changed files with 10080 additions and 213021 deletions
|
|
@ -0,0 +1 @@
|
|||
|
||||
1232
onyx2/cache/1805cc83b6b7a6f4450841515238d63b.cache.php
vendored
1232
onyx2/cache/1805cc83b6b7a6f4450841515238d63b.cache.php
vendored
File diff suppressed because it is too large
Load diff
|
|
@ -1,161 +0,0 @@
|
|||
<?php $cache = array (
|
||||
'var' =>
|
||||
array (
|
||||
'serveur_name' => 'Béta #1',
|
||||
'version' => '1.12 Alpha',
|
||||
'vitesse' => '10',
|
||||
'flottes' => '1',
|
||||
'attaques' => '1',
|
||||
'time_maintenance' => '20000',
|
||||
'galaxie' => '1',
|
||||
'nb_amas' => '1',
|
||||
'nb_systeme' => '99',
|
||||
'nb_planete' => '12',
|
||||
'first_page' => 'index.php',
|
||||
'url_images' => '',
|
||||
'db_prefix' => '',
|
||||
'mail_admin' => 'admin@halo-battle.s-fr.com',
|
||||
'mail_support' => 'technique@halo-battle.s-fr.com',
|
||||
'link' =>
|
||||
array (
|
||||
'self' => './',
|
||||
'accueil' => 'http://www.halo-battle.fr/',
|
||||
'blog' => 'http://www.halo-battle.fr/ark/',
|
||||
'jeu' => 'http://www.halo-battle.fr/',
|
||||
'inscription' => 'http://www.halo-battle.fr/register',
|
||||
'forum' => 'http://www.halo-battle.fr/forum/',
|
||||
'operateur' => '?p=operateur',
|
||||
),
|
||||
'menu' =>
|
||||
array (
|
||||
'accueil' => '?p=accueil',
|
||||
'operateur' => '?p=operateur',
|
||||
'batiments' => '?p=batiments',
|
||||
'caserne' => '?p=caserne',
|
||||
'chantierspatial' => '?p=chantierspatial',
|
||||
'chantierterrestre' => '?p=chantierterrestre',
|
||||
'defenses' => '?p=defenses',
|
||||
'laboratoire' => '?p=laboratoire',
|
||||
'arbre' => '?p=arbre',
|
||||
'ressources' => '?p=ressources',
|
||||
'gestion' => '?p=gestion',
|
||||
'marche' => '?p=marche',
|
||||
'bourse' => '?p=bourse',
|
||||
'flotte' => '?p=flotte',
|
||||
'armee' => '?p=prochainement',
|
||||
'carte' => '?p=carte',
|
||||
'options' => '?p=options',
|
||||
'messages' => '?p=messagerie',
|
||||
'envoie' => '?p=envoyer',
|
||||
'alliance' => '?p=alliances',
|
||||
'classement' => '?p=classement',
|
||||
'chat' => '?p=chat',
|
||||
'forums' => 'http://www.halo-battle.fr/forum/',
|
||||
'bugs' => 'http://www.halo-battle.fr/tester/',
|
||||
'faq' => '?p=faq',
|
||||
'deconnexion' => '?p=deconnexion',
|
||||
),
|
||||
'chrono' => '<!--Page générée en: $ secondes.-->',
|
||||
),
|
||||
'env' =>
|
||||
array (
|
||||
'auth' => '0',
|
||||
'ignore_user_abort' => '1',
|
||||
'error_level' => '6143',
|
||||
'header' =>
|
||||
array (
|
||||
'Content-Type' => 'text/html;charset=utf-8',
|
||||
),
|
||||
'ini' =>
|
||||
array (
|
||||
'allow_url_fopen' => '0',
|
||||
'allow_url_include' => '0',
|
||||
'display_errors' => '1',
|
||||
'display_startup_errors' => '1',
|
||||
'magic_quotes_runtime' => '0',
|
||||
'magic_quotes_sybase' => '0',
|
||||
'memory_limit' => '64M',
|
||||
'log_errors' => '1',
|
||||
),
|
||||
'log_php' => '1',
|
||||
'locale' =>
|
||||
array (
|
||||
0 => 'fr_FR.UTF8',
|
||||
1 => 'fr.UTF8',
|
||||
2 => 'fr_FR.UTF-8',
|
||||
3 => 'fr.UTF-8',
|
||||
),
|
||||
),
|
||||
'root' => '/var/www/halo-battle/htdocs/',
|
||||
'modules' =>
|
||||
array (
|
||||
0 => 'db',
|
||||
1 => 'session',
|
||||
2 => 'lang',
|
||||
3 => 'bbcode',
|
||||
4 => 'templates',
|
||||
5 => 'pistage',
|
||||
),
|
||||
'opt' =>
|
||||
array (
|
||||
'db' =>
|
||||
array (
|
||||
'type' => 'mysql',
|
||||
'profile' => 'default',
|
||||
'log' => '0',
|
||||
'crypt' => '',
|
||||
'no_connection' => 'Connexion à la base de donnée impossible',
|
||||
),
|
||||
'session' =>
|
||||
array (
|
||||
'active' => '1',
|
||||
'time' => '3600',
|
||||
'maxip' => '20',
|
||||
'cookie' => 'hbsession',
|
||||
'db' =>
|
||||
array (
|
||||
'table' => 'sessions',
|
||||
),
|
||||
),
|
||||
'lang' =>
|
||||
array (
|
||||
'type' => 'fr',
|
||||
),
|
||||
'bbcode' =>
|
||||
array (
|
||||
'smiley_dir' => './images/smile/',
|
||||
'smiley' =>
|
||||
array (
|
||||
'wink' => ':wink:',
|
||||
'biggrin' => ':D',
|
||||
'smile' => ':-)',
|
||||
'razz' => ':P',
|
||||
'eek' => ':shock:',
|
||||
'cool' => '8-)',
|
||||
'twisted' => ':twisted:',
|
||||
'evil' => ':evil:',
|
||||
'mad' => ':-x',
|
||||
'confused' => ':-?',
|
||||
'sad' => ':-(',
|
||||
'surprised' => ':-O',
|
||||
'neutral' => ':-|',
|
||||
'redface' => ':oops:',
|
||||
'rolleyes' => ':roll:',
|
||||
'lol' => ':lol:',
|
||||
),
|
||||
),
|
||||
'templates' =>
|
||||
array (
|
||||
'tpl' => '',
|
||||
'compile' => 'modules/templates/compile/',
|
||||
'config' => 'modules/templates/config/',
|
||||
'cache' => 'modules/templates/cache/',
|
||||
'profile' => 'default',
|
||||
),
|
||||
'pistage' =>
|
||||
array (
|
||||
'ips' => '82.245.190.225;84.101.175.59;86.214.198.131',
|
||||
),
|
||||
),
|
||||
'check' => '27fea96d5af3067bdfe2c679ca02fc44ecd1e0f21d456e436e480e7597dd521c',
|
||||
); ?>
|
||||
|
|
@ -1,610 +0,0 @@
|
|||
<?php $cache = array (
|
||||
0 =>
|
||||
array (
|
||||
'id' => '46',
|
||||
'version' => '1.5b',
|
||||
'contenu' => '- Correction du bug de redirection après une construction/annulation
|
||||
- Ajout d\'énormément d\'outils dans le panneau d\'opérateur
|
||||
- Réinitialisation des temps des files d\'attente lorsque l\'on se reconnecte après le mode vacances
|
||||
- Ajout de la raison d\'un blocage de compte
|
||||
- Correction du script de combat',
|
||||
'temps' => '1212184801',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
1 =>
|
||||
array (
|
||||
'id' => '45',
|
||||
'version' => '1.5a',
|
||||
'contenu' => '- Correction de 4 fautes d\'orthographes dans les descriptions et noms d\'unités
|
||||
- Correction du bug de transport de ressources
|
||||
- Ajout d\'un rapport de transport pour le joueur destinataire
|
||||
- Correction d\'une faute d\'orthographe dans les rapports de transport
|
||||
- Refonte complète du script de flotte
|
||||
- Correction du template de rapport de combat : les états des défenses sont bien affichés
|
||||
- Affichage des pourcentages dans les rapports de combats en nombre entiers
|
||||
- Ajout d\'un simulateur de combat
|
||||
- On ne peut plus envoyer de flotte si on a changé une donnée et que ça n\'a pas été validé par le serveur (évite l\'affichage du message "Impossible d\'authentifier la flotte")
|
||||
- Amélioration de la description du placement préférentiel dans l\'inscription
|
||||
- Correction d\'une faute de frappe dans le template de messagerie
|
||||
- Correction des retours de flottes
|
||||
- Ajout du support de fermeture de serveur',
|
||||
'temps' => '1212184800',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
2 =>
|
||||
array (
|
||||
'id' => '44',
|
||||
'version' => '1.5',
|
||||
'contenu' => '- Mise en place du script de combat
|
||||
- Mise à jour en "temps réel", plus besoin d\'actualiser la page deux fois de suite pour avoir les nouveaux chiffres
|
||||
- Le deuxième lien "tout sélectionner" dans la messagerie sélectionne les rapports
|
||||
- Activation du pillage lorsque l\'on gagne un combat spatial
|
||||
- Ajout de la vérification des flottes dans l\'interface d\'admin
|
||||
- Ajout de textes dans la FAQ
|
||||
- Correction du total d\'hydrogène affiché dans la page ressources
|
||||
- Correction de l\'envoie de rapport d\'espionnage',
|
||||
'temps' => '1212098400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
3 =>
|
||||
array (
|
||||
'id' => '43',
|
||||
'version' => '1.4a',
|
||||
'contenu' => '- Correction de l\'affichage de la production des mines
|
||||
- Correction de l\'arrivée des flottes
|
||||
- Correction des alliances si on se trouve dans une alliance qui n\'existe plus',
|
||||
'temps' => '1212012000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
4 =>
|
||||
array (
|
||||
'id' => '42',
|
||||
'version' => '1.4',
|
||||
'contenu' => '- Ajout du chat dans le jeu
|
||||
- Détermination du nom du chateur en fonction du nom de joueur
|
||||
- Application au chat des couleur du design en fonction de la race',
|
||||
'temps' => '1211925600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
5 =>
|
||||
array (
|
||||
'id' => '41',
|
||||
'version' => '1.3',
|
||||
'contenu' => '- Modification de la base de données pour corriger le bug de surconsomation
|
||||
- Correction générale dans les actions des flottes',
|
||||
'temps' => '1211925600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
6 =>
|
||||
array (
|
||||
'id' => '40',
|
||||
'version' => '1.2e',
|
||||
'contenu' => '- Ajout des caractéristiques des vaisseaux dans les descriptions
|
||||
- On peut rappeler sa flotte',
|
||||
'temps' => '1211925600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
7 =>
|
||||
array (
|
||||
'id' => '39',
|
||||
'version' => '1.2d',
|
||||
'contenu' => '- Ajustement des coûts et caractéristiques des vaisseaux et défenses
|
||||
- Ajout de l\'interface d\'admin pour la vérification des multi-comptes
|
||||
- Modification de la consommation des vaisseaux',
|
||||
'temps' => '1211839200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
8 =>
|
||||
array (
|
||||
'id' => '38',
|
||||
'version' => '1.2c',
|
||||
'contenu' => '- Correction de la consommation des vaisseaux
|
||||
- Ajout d\'un lien pour classer par place les membres d\'une alliance
|
||||
- Correction de la possibilité de construire un bâtiment inexistant
|
||||
- Correction du lien FAQ dans l\'en-tête
|
||||
- Les planètes mères ont toute 225 cases
|
||||
- Correction de l\'erreur des slots',
|
||||
'temps' => '1211752800',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
9 =>
|
||||
array (
|
||||
'id' => '37',
|
||||
'version' => '1.2b',
|
||||
'contenu' => '- Ajout du tableau de production dans la page description
|
||||
- Correction de la file d\'attente : lorsque l\'on annule un bâtiment, le premier de la liste ne recommence pas à 0
|
||||
- Ajout de détails sur la flotte dans la page de description d\'une flotte
|
||||
- Correction du radar de la page d\'accueil en cas de combat en cours
|
||||
- Correction du bug d\'actualisation des pages de construction.',
|
||||
'temps' => '1211666400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
10 =>
|
||||
array (
|
||||
'id' => '36',
|
||||
'version' => '1.2a',
|
||||
'contenu' => '- Correction de la faute de frappe "Accpter" dans la liste des membre d\'alliance
|
||||
- Prise en charge du BBcode dans les présentations et texte interne des alliances
|
||||
- Correction de la faille XSS dans la présentation et le texte interne des alliances',
|
||||
'temps' => '1211580000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
11 =>
|
||||
array (
|
||||
'id' => '35',
|
||||
'version' => '1.2',
|
||||
'contenu' => '- Augmentation de la production de ressources de 50%
|
||||
|
||||
- Correction de 14 failles de sécurité
|
||||
- Correction de la possibilité de construire un bâtiment déjà en file d\'attente
|
||||
- Correction de la possibilité de rechercher une technologie déjà en file d\'attente
|
||||
- Ajout du classement dans la liste des membres de l\'alliance
|
||||
- Ajout d\'un champ mot de passe dans le changement d\'adresse électronique
|
||||
- Ajout des silos de stockage dans la page Ressources
|
||||
- Lorsque l\'on annule la première chose d\'une file d\'attente, le temps redémarre
|
||||
- Correction du nom de la page laboratoire
|
||||
- Correction du lancement/arrêt des recherches
|
||||
- Ajout de la page de description des unités, bâtiments, technologies
|
||||
- Ajout d\'une limite de taille pour les noms de planète
|
||||
- Ajout d\'une limite de taille pour les noms de flottes',
|
||||
'temps' => '1211493600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
12 =>
|
||||
array (
|
||||
'id' => '34',
|
||||
'version' => '1.1c',
|
||||
'contenu' => '- Correction de la carte spatiale : on peut afficher toutes les galaxies
|
||||
- Sauvegarde des identifications à des fins de vérifications par les chefs internes
|
||||
- Limitation du nombre de MP affiché dans la messagerie
|
||||
- Suppression du classement des membres du staff
|
||||
- Limitation de la taille du champ pseudo lors de l\'inscription
|
||||
- Lorsque l\'on est pas encore classé, est affiché "non classé" au lieu de "0ème"
|
||||
- Correction du nom "galaxie" en "amas" dans la carte spatiale
|
||||
- Correction de 3 fautes d\'orthographes dans les descriptions.',
|
||||
'temps' => '1211234400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
13 =>
|
||||
array (
|
||||
'id' => '33',
|
||||
'version' => '1.1b',
|
||||
'contenu' => 'Changement d\'hébergeur :
|
||||
Passage de Halo.fr à S-fr.com',
|
||||
'temps' => '1211228100',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
14 =>
|
||||
array (
|
||||
'id' => '32',
|
||||
'version' => '1.1b',
|
||||
'contenu' => '- Ajout de la publicité et des statistiques sur les pages
|
||||
- Correction du script de session (Par Phantom)
|
||||
- Ajout d\'un formulaire de don en bas de page',
|
||||
'temps' => '1211148000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
15 =>
|
||||
array (
|
||||
'id' => '31',
|
||||
'version' => '1.1a',
|
||||
'contenu' => '- Correction de l\'erreur d\'affichage des accents dans les noms de planètes
|
||||
- Correction du nombre de cases de la planète
|
||||
- Les batiments qui ne sont pas encore construits ne sont plus affiché dans la page Ressources.
|
||||
- Correction de la production minimale pour produire lorsque l\'on a pas de centrales électriques
|
||||
- Correction du lien de changement de mot de passe et d\'adresse mail (dans les options)
|
||||
- Correction du total de l\'énergie affiché dans la page ressources
|
||||
- Ajout d\'un lien pour répondre rapidement aux MP',
|
||||
'temps' => '1211148000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
16 =>
|
||||
array (
|
||||
'id' => '30',
|
||||
'version' => '1.1',
|
||||
'contenu' => '- Ajout d\'une production minimale',
|
||||
'temps' => '1211061600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
17 =>
|
||||
array (
|
||||
'id' => '29',
|
||||
'version' => '1.0b',
|
||||
'contenu' => '- Correction du mail d\'activation
|
||||
- Ajout du système d\'oubli de mot de passe
|
||||
- Déplacement de l\'énergie à droite de l\'hydrogène/ions
|
||||
- Correction des noms de ressources affichés dans la page ressources
|
||||
- Correction du script de production
|
||||
- Ajout de listes découlantes pour changer le taux de production des mines et des centrales',
|
||||
'temps' => '1211061600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
18 =>
|
||||
array (
|
||||
'id' => '28',
|
||||
'version' => '1.0a',
|
||||
'contenu' => '- Correction de la non-production
|
||||
- Correction de la signature des pré-alliances',
|
||||
'temps' => '1210975200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
19 =>
|
||||
array (
|
||||
'id' => '27',
|
||||
'version' => '1.0<br />Version FINALE',
|
||||
'contenu' => '- Réorganisation complètes des fichiers
|
||||
- Utilisation du noyau Onyx',
|
||||
'temps' => '1210975200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
20 =>
|
||||
array (
|
||||
'id' => '26',
|
||||
'version' => '0.11a',
|
||||
'contenu' => '- Autorisation des espaces dans les noms de flottes
|
||||
- Ajout du champ \'tactique\' dans le formulaire d\'envoi de flotte
|
||||
- Correction du script de combat au niveau du pillage
|
||||
- Correction de l\'heure d\'envoi affiché dans le détail des messages privés ou rapports
|
||||
...',
|
||||
'temps' => '1203980400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
21 =>
|
||||
array (
|
||||
'id' => '25',
|
||||
'version' => '0.11<br />Release Candidate 2',
|
||||
'contenu' => '- Correction des heures et destinations de retour dans la liste des flottes en mission
|
||||
- Correction des erreurs affichés lors de la création de flottes
|
||||
- Mise en place du nouveau script de combat
|
||||
- Correction de l\'envoie de flotte lorsqu\'on a plus de 1 000 vaisseaux d\'un type
|
||||
- Interprétation du BBcode dans les messages privés et les rapports
|
||||
- Traduction des noms des mois dans les dates
|
||||
|
||||
- Modification de la base de données pour le nouveau script de combat',
|
||||
'temps' => '1203894000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
22 =>
|
||||
array (
|
||||
'id' => '24',
|
||||
'version' => '0.10b',
|
||||
'contenu' => '- Correction du temps de production des 5 premiers bâtiments.
|
||||
- Correction de l\'arbre des technologies.',
|
||||
'temps' => '1203202800',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
23 =>
|
||||
array (
|
||||
'id' => '23',
|
||||
'version' => '0.10a',
|
||||
'contenu' => '- Correction du temps de déplacement lors de la création de flotte
|
||||
- Modification de la couleur pour les messages privés mis en valeur
|
||||
- Les liens d\'envoi rapide de mail sont diriger vers la bonne page
|
||||
- Correction de l\'affichage des images manquante dans les batiments, technologies, ...
|
||||
',
|
||||
'temps' => '1200783600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
24 =>
|
||||
array (
|
||||
'id' => '22',
|
||||
'version' => '0.10<br />Release Candidate 1',
|
||||
'contenu' => 'Ajout de beaucoup trop de chose pour être listés ici ^^',
|
||||
'temps' => '1200524400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
25 =>
|
||||
array (
|
||||
'id' => '21',
|
||||
'version' => '0.9a<br />Béta 3',
|
||||
'contenu' => '- Correction de "l\'overproduction" si l\'on dépasse la capacité des dépôts
|
||||
- Correction de la production, passage en page FINALE
|
||||
|
||||
- Ajout de toutes les descriptions détaillés pour les bâtiments, défenses, chantier_spatial, ...
|
||||
- Mise en place du classement',
|
||||
'temps' => '1197846000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
26 =>
|
||||
array (
|
||||
'id' => '20',
|
||||
'version' => '0.9',
|
||||
'contenu' => '- Correction de l\'identification si le JavaScript n\'est pas activé<br />
|
||||
- Correction du problème de ralentissement de création des vaisseaux<br />
|
||||
- Correction de l\'impossibilité de construire certain bâtiments après d\'autres<br />
|
||||
- Mise en template de la page de construction des défenses<br />
|
||||
- Ajout d\'une file d\'attente pour la construction des défenses<br />
|
||||
<br />
|
||||
- Modification de la base de données pour introduire la file d\'attente',
|
||||
'temps' => '1197414000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
27 =>
|
||||
array (
|
||||
'id' => '19',
|
||||
'version' => '0.8a',
|
||||
'contenu' => '- Correction d\'une faille de sécurité mineure dans l\'identification<br />
|
||||
- Correction de la continuité bizarre de la carte spatiale<br />
|
||||
- Correction du bug de la page de départ<br />
|
||||
- Enregistrement des connexions pour vérification par les opérateurs<br />
|
||||
<br />
|
||||
- Ajout de cookies pour se souvenir des derniers paramètres d\'identifications<br />
|
||||
- Correction du bug de temps de construction lors d\'une déconnexion (valable uniquement pour le chantier spatial)<br />
|
||||
- Correction d\'une faille de sécurité avec les cookies d\'identification.',
|
||||
'temps' => '1195945200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
28 =>
|
||||
array (
|
||||
'id' => '18',
|
||||
'version' => '0.8<br />Béta 2',
|
||||
'contenu' => '- Ajout d\'un avertissement lorsque l\'on n\'a pas de laboratoire, de chantier spatial, ...<br />
|
||||
- Correction du bug des ID lors de la construction<br />
|
||||
- Correction de l\'énergie affichée<br />
|
||||
- Correction du point qui était affiché si le chiffre était négatif<br />
|
||||
- Transformation du chantier spatial en template<br />
|
||||
- Mise en place de la file d\'attente pour le chantier spatial<br />
|
||||
- La production de ressource s\'arrête si les entrepôts sont pleins<br />
|
||||
- Nouveaux calculs de production (calcul avec coefficient)<br />
|
||||
- Ajout d\'une sécurité empêchant l\'actualisation de la page avant 2 secondes (ANNULEE)<br />
|
||||
- Correction du bug de l\'énergie et de la production<br />',
|
||||
'temps' => '1195686000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
29 =>
|
||||
array (
|
||||
'id' => '17',
|
||||
'version' => '0.7a',
|
||||
'contenu' => '- Ajout de la production à la chaine pour les recherches<br />
|
||||
- Correction de l\'erreur de redirection lors de l\'annulation d\'une recherche produite à la chaine<br />
|
||||
- Correction de la possibilité de lancer une recherche sans avoir toutes les ressources ou autres niveaux<br />
|
||||
- Transformation de la page bâtiment en template<br />
|
||||
- Le forum est affiché dans la zone de contenu (RETIRE dans la version 0.8)<br />
|
||||
- Modification de l\'apparence de l\'inscription<br />
|
||||
- Correction de la possibilité de construire tous les bâtiments via l\'URL<br />
|
||||
- Correction des bâtiments mystérieusement en file d\'attente<br />
|
||||
- Correction des recherches mystérieusement en file d\'attente<br />
|
||||
- Correction des ressources nécessaire pour une mine de cristal<br />
|
||||
- Modification des textes pour les mettre au format HTML (accents, ...)<br />
|
||||
- Les images descriptives apparaissent sans être répétés si le cadre est plus grand que prévu<br />',
|
||||
'temps' => '1195599600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
30 =>
|
||||
array (
|
||||
'id' => '16',
|
||||
'version' => '0.7',
|
||||
'contenu' => '- File d\'attente pour le laboratoire fonctionnelle<br />
|
||||
- Correction du nom court "vaisseaux de colo" en "vaisseau(x) de colonisation" dans le chantier spatial et l\'écran des flottes.<br />
|
||||
- Correction de l\'inscription : on pouvais avoir une planète avec une position de plus de 12<br />
|
||||
- Mise en évidence du message d\'impossibilité d\'envoyer de nouvelles flottes (limitation de slots)<br />
|
||||
- Correction du bug de changement de nom des planètes<br />
|
||||
- Transformation de l\'envoie des MP en templates<br />
|
||||
- Correction des erreurs affichées dans le formulaire d\'envoi de MP<br />
|
||||
- Correction de la possibilité de faire deux recherches identiques dans la même file d\'attente<br />
|
||||
- Ajout d\'un message communs à toutes les pages<br />
|
||||
- Correction des images des défenses<br />
|
||||
- Modification de la description du "canon plasma"<br />
|
||||
- Intégration des publicités Google<br />
|
||||
- Correction d\'une faille de sécurité dans le système de validation de recherches<br />
|
||||
- Modification de la template du laboratoire<br />',
|
||||
'temps' => '1195513200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
31 =>
|
||||
array (
|
||||
'id' => '15',
|
||||
'version' => '0.6d',
|
||||
'contenu' => '- Affichage et suppression dans la file d\'attente de recherche correct<br />
|
||||
<br />
|
||||
- Modification de la base de données pour permettre la file d\'attente des recherches',
|
||||
'temps' => '1194908400',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
32 =>
|
||||
array (
|
||||
'id' => '14',
|
||||
'version' => '0.6c',
|
||||
'contenu' => '- Ajout du BBcode dans les MP<br />
|
||||
- Correction des coordonnées de la planète dans le message de colonisation<br />
|
||||
- Tous les bâtiments ont leur description détaillée<br />
|
||||
- Correction des liens des bâtiments dans l\'arbre des technologies<br />
|
||||
- Correction de la taille des blocs<br />
|
||||
- Finalisation de la template du laboratoire<br />
|
||||
- Modification possible du message d\'accueil<br />
|
||||
- Ajout d\'avertissements automatiques en cas de maintenance<br />
|
||||
- Correction de l\'oubli des retours à la ligne dans les rapports de bugs<br />
|
||||
- Correction de la faille de sécurité dans les MP',
|
||||
'temps' => '1194822000',
|
||||
'pseudo' => 'némunaire',
|
||||
),
|
||||
33 =>
|
||||
array (
|
||||
'id' => '13',
|
||||
'version' => '0.6b',
|
||||
'contenu' => '- Correction dans les noms d\'utilisateurs des flottes<br />
|
||||
- Correction de la construction du bâtiment chantier spatial<br />
|
||||
- Ajout d\'erreurs avec style dans les options<br />
|
||||
- Correction d\'une faille de sécurité dans les pages rapport de bug et renommer sa planète<br />
|
||||
- Correction du bug empêchant de modifier le mot de passe<br />
|
||||
- Correction de l\'impossibilité d\'envoyer un MP<br />
|
||||
- Correction du captcha d\'identification<br />
|
||||
- Correction du bug empêchant de modifier le nom de sa planète si le nom est vide<br />
|
||||
- Ajout d\'un favicon<br />
|
||||
- Correction de la suppression automatique des MP<br />
|
||||
- Nouveau système de colonisation<br />
|
||||
<br />
|
||||
- Mise à jour de la base de données pour finaliser l\'isolement',
|
||||
'temps' => '1194735600',
|
||||
'pseudo' => 'némunaire',
|
||||
),
|
||||
34 =>
|
||||
array (
|
||||
'id' => '12',
|
||||
'version' => '0.6a',
|
||||
'contenu' => '- Ajout d\'un séparateur dans les grands nombres<br />
|
||||
- Correction de l\'impossibilité de rechercher la recherche n°8<br />
|
||||
- Mise à jour de la consommation<br />
|
||||
- Finition du tableau des ressources/sélection de planètes<br />
|
||||
- Mise en place de la reconduction de l\'isolement de la planète<br />
|
||||
- Ajout de l\'isolement de la planète<br />
|
||||
<br />
|
||||
- Mise à jour de la base de données pour permettre l\'isolement des planètes',
|
||||
'temps' => '1194649200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
35 =>
|
||||
array (
|
||||
'id' => '11',
|
||||
'version' => '0.6',
|
||||
'contenu' => '- Correction de l\'annulation des recherches<br />
|
||||
- Correction du bug qui empêchait la colonisation<br />
|
||||
- Correction de la recherche "Réacteur de fusion"<br />
|
||||
- Limite de colonisation à 15 planètes<br />
|
||||
- Vérifications avant le lancement de flotte<br />
|
||||
- Pas de changement de page quand on change de planète<br />
|
||||
- Ajout du fichier de sécurité dans toutes les pages<br />',
|
||||
'temps' => '1194562800',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
36 =>
|
||||
array (
|
||||
'id' => '10',
|
||||
'version' => '5.0b',
|
||||
'contenu' => '- Désactivation de register_global<br />
|
||||
- Désactivation des magic_quotes<br />
|
||||
- Mise en template de la page de départ<br />',
|
||||
'temps' => '1194390000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
37 =>
|
||||
array (
|
||||
'id' => '9',
|
||||
'version' => '0.5a<br />Béta 1',
|
||||
'contenu' => '- Ajout de flèches pour se déplacer dans la carte spatiale<br />
|
||||
- Correction de la validation des codes d\'activation<br />
|
||||
- Vérification de la destination des flottes<br />
|
||||
- Impossible de créer un bâtiment si l\'on a pas assez de ressource (même par l\'adresse URL)<br />
|
||||
- Idem pour les vaisseaux et les recherches<br />
|
||||
- Ajout d\'un rapport d\'attaque<br />
|
||||
- Correction du rapport de colonie<br />
|
||||
<br />
|
||||
- Modification de la base de données sans intérêt pour cette version',
|
||||
'temps' => '1194303600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
38 =>
|
||||
array (
|
||||
'id' => '8',
|
||||
'version' => '0.5',
|
||||
'contenu' => '- Ajout particulier ;) top secret ^^<br />
|
||||
- Ajout de grade d\'authentification<br />
|
||||
- Mise en template de la page des recherche<br />
|
||||
- Ajout de la mission \'recyclage\' pour les vaisseaux<br />
|
||||
<br />
|
||||
- Modification de la base de données pour les grades d\'authentification et le contenu pour les flottes<br />',
|
||||
'temps' => '1194217200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
39 =>
|
||||
array (
|
||||
'id' => '7',
|
||||
'version' => '0.4a',
|
||||
'contenu' => '- Ajout des descriptions pour les bâtiments, chantier spatial, chantier terrestre, caserne, défense<br />
|
||||
- Désactivation de la page du chantier terrestre<br />
|
||||
- Connexion impossible si le JavaScript n\'est pas activé<br />
|
||||
- Désactivation de la page de la caserne<br />
|
||||
- Affichage du jeu impossible sans s\'identifier<br />
|
||||
- Augmentation de la protection lors de l\'identification<br />
|
||||
- Correction de l\'affichage de l\'heure<br />
|
||||
- Correction de l\'alignement au centre de toutes les pages d\'entrainement<br />
|
||||
<br />
|
||||
- Correction d\'un bug durant l\'annulation de la construction des batiments<br />
|
||||
- Ajout de détails sur des batiments<br />
|
||||
- Nouveau temps et consomations pour les flottes<br />
|
||||
- Mise en place de la limite de contenu dans les vaisseaux<br />
|
||||
- Augmentation de la sécurité lors de l\'identification.',
|
||||
'temps' => '1194130800',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
40 =>
|
||||
array (
|
||||
'id' => '6',
|
||||
'version' => '0.4',
|
||||
'contenu' => '- Fonctionnalité "attaquer" fonctionnelle pour les flottes<br />
|
||||
- Nouvelles images : humains : M808B Scorpions MBT, M12 LRV Warthogs, 077-TC Pelican<br />
|
||||
- Masquage du tableau des flottes en actions s\'il n\'y en a pas<br />
|
||||
- Correction des actions "Tous les vaisseaux" et "Aucun vaisseau"<br />
|
||||
- Création de flotte impossible sans vaisseau ou sans nom<br />
|
||||
- Correction de la fonctionnalité "transporter" dans les flottes<br />
|
||||
- Fonctionnalité "coloniser" opérationnelle<br />
|
||||
<br />
|
||||
Ajout de sécurité concernant le vol de session (sécurité pas encore active)',
|
||||
'temps' => '1193958000',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
41 =>
|
||||
array (
|
||||
'id' => '5',
|
||||
'version' => '0.3a',
|
||||
'contenu' => '- Ajout d\'une notification sur la page de départ lorsque l\'on a des messages non lus<br />
|
||||
- Correction des problèmes d\'alignement et de couleur des tableaux de production<br />
|
||||
- Finalisation du système d\'inscription<br />
|
||||
- Correction du vaisseaux grand-transporteur qui n\'était pas construit<br />
|
||||
- Correction de "Ecole militaire" en "Caserne" dans l\'arbre des technologie<br />
|
||||
- Amélioration de la page des versions en page dynamique<br />
|
||||
- Nouvelles images : humains : Chantier terrestre, chantier spatial, technologie armement<br />
|
||||
- Restauration d\'une ancienne image : humains : chantier spatial<br />
|
||||
<br />
|
||||
Modification de la base de données en vue de nouvelles fonctionnalités pour les flottes.',
|
||||
'temps' => '1193871600',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
42 =>
|
||||
array (
|
||||
'id' => '4',
|
||||
'version' => '0.3',
|
||||
'contenu' => '- Ajout de l\'image de fond<br />
|
||||
- Alignement au centre du tableau des pages : bâtiments, caserne, chantier spatial, chantier terrestre, défenses, laboratoire<br />
|
||||
- Ajout de 3 images de planètes et modification du script d\'inscription pour<br />
|
||||
- Fonctionnalité "Transporter" et "stationner" opérationnelle pour les flottes',
|
||||
'temps' => '1193785200',
|
||||
'pseudo' => 'nemunaire',
|
||||
),
|
||||
43 =>
|
||||
array (
|
||||
'id' => '3',
|
||||
'version' => '0.2<br />Alpha 1',
|
||||
'contenu' => 'Modifications :<br />
|
||||
- Ajout du nouveau design ( au fur et a mesure ).<br />
|
||||
- Augmentation des ressources.<br />
|
||||
<br />
|
||||
Corrections :<br />
|
||||
- Correction du bug du cristal.
|
||||
',
|
||||
'temps' => '1193921270',
|
||||
'pseudo' => 'terao',
|
||||
),
|
||||
44 =>
|
||||
array (
|
||||
'id' => '2',
|
||||
'version' => '0.1',
|
||||
'contenu' => 'Modifications :<br />
|
||||
- Ajout de milliers de choses utiles.<br />
|
||||
<br />
|
||||
Corrections :<br />
|
||||
- Correction de plein de bugs.<br />
|
||||
',
|
||||
'temps' => '1193921239',
|
||||
'pseudo' => 'terao',
|
||||
),
|
||||
45 =>
|
||||
array (
|
||||
'id' => '1',
|
||||
'version' => '0.0',
|
||||
'contenu' => 'Commencement du projet Halo Battle.
|
||||
',
|
||||
'temps' => '1193916768',
|
||||
'pseudo' => 'terao',
|
||||
),
|
||||
); ?>
|
||||
|
|
@ -1,152 +0,0 @@
|
|||
<?php $cache = array (
|
||||
'var' =>
|
||||
array (
|
||||
'serveur_name' => 'Béta #1',
|
||||
'version' => '1.12 Alpha',
|
||||
'vitesse' => '10',
|
||||
'flottes' => '1',
|
||||
'attaques' => '1',
|
||||
'time_maintenance' => '20000',
|
||||
'galaxie' => '1',
|
||||
'nb_amas' => '1',
|
||||
'nb_systeme' => '99',
|
||||
'nb_planete' => '12',
|
||||
'first_page' => 'index.php',
|
||||
'url_images' => '',
|
||||
'db_prefix' => '',
|
||||
'mail_admin' => 'admin@halo-battle.s-fr.com',
|
||||
'mail_support' => 'technique@halo-battle.s-fr.com',
|
||||
'link' =>
|
||||
array (
|
||||
'self' => './',
|
||||
'accueil' => 'http://www.halo-battle.fr/',
|
||||
'blog' => 'http://www.halo-battle.fr/ark/',
|
||||
'jeu' => 'http://www.halo-battle.fr/',
|
||||
'inscription' => 'http://www.halo-battle.fr/register',
|
||||
'forum' => 'http://www.halo-battle.fr/forum/',
|
||||
'operateur' => '?p=operateur',
|
||||
),
|
||||
'menu' =>
|
||||
array (
|
||||
'accueil' => '?p=accueil',
|
||||
'courrier' => '?p=courrier',
|
||||
'webmail' => 'http://panel-admin.s-fr.com/tools/webmail/src/login.php',
|
||||
'vip' => '?p=vip',
|
||||
'vflottes' => '?p=vflottes',
|
||||
'vplanetes' => '?p=vplanetes',
|
||||
'vjoueurs' => '?p=vjoueurs',
|
||||
'valliances' => '?p=valliances',
|
||||
'vrapports' => '?p=vrapports',
|
||||
'sjoueurs' => '?p=sjoueurs',
|
||||
'sancp' => '?p=sancp',
|
||||
'cjoueurs' => '?p=cjoueurs',
|
||||
'djoueurs' => '?p=djoueurs',
|
||||
'inscription' => '?p=inscription',
|
||||
'bandeau' => '?p=bandeau',
|
||||
'demarrage' => '?p=demarrage',
|
||||
'versions' => '?p=version',
|
||||
),
|
||||
'chrono' => '<!--Page générée en: $ secondes.-->',
|
||||
),
|
||||
'env' =>
|
||||
array (
|
||||
'auth' => '0',
|
||||
'ignore_user_abort' => '1',
|
||||
'error_level' => '6143',
|
||||
'header' =>
|
||||
array (
|
||||
'Content-Type' => 'text/html;charset=utf-8',
|
||||
),
|
||||
'ini' =>
|
||||
array (
|
||||
'allow_url_fopen' => '0',
|
||||
'allow_url_include' => '0',
|
||||
'display_errors' => '1',
|
||||
'display_startup_errors' => '1',
|
||||
'magic_quotes_runtime' => '0',
|
||||
'magic_quotes_sybase' => '0',
|
||||
'memory_limit' => '64M',
|
||||
'log_errors' => '1',
|
||||
),
|
||||
'log_php' => '1',
|
||||
'locale' =>
|
||||
array (
|
||||
0 => 'fr_FR.UTF8',
|
||||
1 => 'fr.UTF8',
|
||||
2 => 'fr_FR.UTF-8',
|
||||
3 => 'fr.UTF-8',
|
||||
),
|
||||
),
|
||||
'root' => '/var/www/halo-battle/htdocs/',
|
||||
'modules' =>
|
||||
array (
|
||||
0 => 'db',
|
||||
1 => 'session',
|
||||
2 => 'lang',
|
||||
3 => 'bbcode',
|
||||
4 => 'templates',
|
||||
5 => 'pistage',
|
||||
),
|
||||
'opt' =>
|
||||
array (
|
||||
'db' =>
|
||||
array (
|
||||
'type' => 'mysql',
|
||||
'profile' => 'default',
|
||||
'log' => '0',
|
||||
'crypt' => '',
|
||||
'no_connection' => 'Connexion à la base de donnée impossible',
|
||||
),
|
||||
'session' =>
|
||||
array (
|
||||
'active' => '1',
|
||||
'time' => '3600',
|
||||
'maxip' => '20',
|
||||
'cookie' => 'hbsession',
|
||||
'db' =>
|
||||
array (
|
||||
'table' => 'sessions',
|
||||
),
|
||||
),
|
||||
'lang' =>
|
||||
array (
|
||||
'type' => 'fr',
|
||||
),
|
||||
'bbcode' =>
|
||||
array (
|
||||
'smiley_dir' => './images/smile/',
|
||||
'smiley' =>
|
||||
array (
|
||||
'wink' => ':wink:',
|
||||
'biggrin' => ':D',
|
||||
'smile' => ':-)',
|
||||
'razz' => ':P',
|
||||
'eek' => ':shock:',
|
||||
'cool' => '8-)',
|
||||
'twisted' => ':twisted:',
|
||||
'evil' => ':evil:',
|
||||
'mad' => ':-x',
|
||||
'confused' => ':-?',
|
||||
'sad' => ':-(',
|
||||
'surprised' => ':-O',
|
||||
'neutral' => ':-|',
|
||||
'redface' => ':oops:',
|
||||
'rolleyes' => ':roll:',
|
||||
'lol' => ':lol:',
|
||||
),
|
||||
),
|
||||
'templates' =>
|
||||
array (
|
||||
'tpl' => '',
|
||||
'compile' => 'modules/templates/compile/',
|
||||
'config' => 'modules/templates/config/',
|
||||
'cache' => 'modules/templates/cache/',
|
||||
'profile' => 'default',
|
||||
),
|
||||
'pistage' =>
|
||||
array (
|
||||
'ips' => '82.245.190.225;84.101.175.59;86.214.198.131',
|
||||
),
|
||||
),
|
||||
'check' => '27fea96d5af3067bdfe2c679ca02fc44ecd1e0f21d456e436e480e7597dd521c',
|
||||
); ?>
|
||||
|
|
@ -1,161 +0,0 @@
|
|||
<?php $cache = array (
|
||||
'var' =>
|
||||
array (
|
||||
'serveur_name' => 'Béta #1',
|
||||
'version' => '1.12 Alpha',
|
||||
'vitesse' => '10',
|
||||
'flottes' => '1',
|
||||
'attaques' => '1',
|
||||
'time_maintenance' => '20000',
|
||||
'galaxie' => '1',
|
||||
'nb_amas' => '1',
|
||||
'nb_systeme' => '99',
|
||||
'nb_planete' => '12',
|
||||
'first_page' => 'index.php',
|
||||
'url_images' => '',
|
||||
'db_prefix' => '',
|
||||
'mail_admin' => 'admin@halo-battle.s-fr.com',
|
||||
'mail_support' => 'technique@halo-battle.s-fr.com',
|
||||
'link' =>
|
||||
array (
|
||||
'self' => './',
|
||||
'accueil' => 'http://www.halo-battle.fr/',
|
||||
'blog' => 'http://www.halo-battle.fr/ark/',
|
||||
'jeu' => 'http://www.halo-battle.fr/',
|
||||
'inscription' => 'http://www.halo-battle.fr/register',
|
||||
'forum' => 'http://www.halo-battle.fr/forum/',
|
||||
'operateur' => '?p=operateur',
|
||||
),
|
||||
'menu' =>
|
||||
array (
|
||||
'accueil' => '?p=accueil',
|
||||
'operateur' => '?p=operateur',
|
||||
'batiments' => '?p=batiments',
|
||||
'caserne' => '?p=caserne',
|
||||
'chantierspatial' => '?p=chantierspatial',
|
||||
'chantierterrestre' => '?p=chantierterrestre',
|
||||
'defenses' => '?p=defenses',
|
||||
'laboratoire' => '?p=laboratoire',
|
||||
'arbre' => '?p=arbre',
|
||||
'ressources' => '?p=ressources',
|
||||
'gestion' => '?p=gestion',
|
||||
'marche' => '?p=marche',
|
||||
'bourse' => '?p=bourse',
|
||||
'flotte' => '?p=flotte',
|
||||
'armee' => '?p=prochainement',
|
||||
'carte' => '?p=carte',
|
||||
'options' => '?p=options',
|
||||
'messages' => '?p=messagerie',
|
||||
'envoie' => '?p=envoyer',
|
||||
'alliance' => '?p=alliances',
|
||||
'classement' => '?p=classement',
|
||||
'chat' => '?p=chat',
|
||||
'forums' => 'http://www.halo-battle.fr/forum/',
|
||||
'bugs' => 'http://www.halo-battle.fr/tester/',
|
||||
'faq' => '?p=faq',
|
||||
'deconnexion' => '?p=deconnexion',
|
||||
),
|
||||
'chrono' => '<!--Page générée en: $ secondes.-->',
|
||||
),
|
||||
'env' =>
|
||||
array (
|
||||
'auth' => '0',
|
||||
'ignore_user_abort' => '1',
|
||||
'error_level' => '6143',
|
||||
'header' =>
|
||||
array (
|
||||
'Content-Type' => 'text/html;charset=utf-8',
|
||||
),
|
||||
'ini' =>
|
||||
array (
|
||||
'allow_url_fopen' => '0',
|
||||
'allow_url_include' => '0',
|
||||
'display_errors' => '1',
|
||||
'display_startup_errors' => '1',
|
||||
'magic_quotes_runtime' => '0',
|
||||
'magic_quotes_sybase' => '0',
|
||||
'memory_limit' => '64M',
|
||||
'log_errors' => '1',
|
||||
),
|
||||
'log_php' => '1',
|
||||
'locale' =>
|
||||
array (
|
||||
0 => 'fr_FR.UTF8',
|
||||
1 => 'fr.UTF8',
|
||||
2 => 'fr_FR.UTF-8',
|
||||
3 => 'fr.UTF-8',
|
||||
),
|
||||
),
|
||||
'root' => '/var/www/halo-battle/htdocs/',
|
||||
'modules' =>
|
||||
array (
|
||||
0 => 'db',
|
||||
1 => 'session',
|
||||
2 => 'lang',
|
||||
3 => 'bbcode',
|
||||
4 => 'templates',
|
||||
5 => 'pistage',
|
||||
),
|
||||
'opt' =>
|
||||
array (
|
||||
'db' =>
|
||||
array (
|
||||
'type' => 'mysql',
|
||||
'profile' => 'default',
|
||||
'log' => '0',
|
||||
'crypt' => '',
|
||||
'no_connection' => 'Connexion à la base de donnée impossible',
|
||||
),
|
||||
'session' =>
|
||||
array (
|
||||
'active' => '1',
|
||||
'time' => '3600',
|
||||
'maxip' => '20',
|
||||
'cookie' => 'hbsession',
|
||||
'db' =>
|
||||
array (
|
||||
'table' => 'sessions',
|
||||
),
|
||||
),
|
||||
'lang' =>
|
||||
array (
|
||||
'type' => 'fr',
|
||||
),
|
||||
'bbcode' =>
|
||||
array (
|
||||
'smiley_dir' => './images/smile/',
|
||||
'smiley' =>
|
||||
array (
|
||||
'wink' => ':wink:',
|
||||
'biggrin' => ':D',
|
||||
'smile' => ':-)',
|
||||
'razz' => ':P',
|
||||
'eek' => ':shock:',
|
||||
'cool' => '8-)',
|
||||
'twisted' => ':twisted:',
|
||||
'evil' => ':evil:',
|
||||
'mad' => ':-x',
|
||||
'confused' => ':-?',
|
||||
'sad' => ':-(',
|
||||
'surprised' => ':-O',
|
||||
'neutral' => ':-|',
|
||||
'redface' => ':oops:',
|
||||
'rolleyes' => ':roll:',
|
||||
'lol' => ':lol:',
|
||||
),
|
||||
),
|
||||
'templates' =>
|
||||
array (
|
||||
'tpl' => '',
|
||||
'compile' => 'modules/templates/compile/',
|
||||
'config' => 'modules/templates/config/',
|
||||
'cache' => 'modules/templates/cache/',
|
||||
'profile' => 'default',
|
||||
),
|
||||
'pistage' =>
|
||||
array (
|
||||
'ips' => '82.245.190.225;84.101.175.59;86.214.198.131',
|
||||
),
|
||||
),
|
||||
'check' => '27fea96d5af3067bdfe2c679ca02fc44ecd1e0f21d456e436e480e7597dd521c',
|
||||
); ?>
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
<?php $cache = array (
|
||||
'count' =>
|
||||
array (
|
||||
0 => '15',
|
||||
1 => '15',
|
||||
2 => 'cette',
|
||||
3 => '1',
|
||||
),
|
||||
'infos' =>
|
||||
array (
|
||||
0 =>
|
||||
array (
|
||||
'id' => '5',
|
||||
'texte' => 'TEST',
|
||||
'color' => '',
|
||||
),
|
||||
1 =>
|
||||
array (
|
||||
'id' => '1',
|
||||
'texte' => 'DEFENDREZ-VOUS L\'HUMANITE OU LA DETRUIREZ-VOUS',
|
||||
'color' => 'yellow',
|
||||
),
|
||||
),
|
||||
'messagedemarrage' => 'Weekly du 2 juillet 2009',
|
||||
); ?>
|
||||
1
onyx2/cache/checksum.php
vendored
1
onyx2/cache/checksum.php
vendored
File diff suppressed because one or more lines are too long
|
|
@ -1,161 +0,0 @@
|
|||
<?php $cache = array (
|
||||
'var' =>
|
||||
array (
|
||||
'serveur_name' => 'Béta #1',
|
||||
'version' => '1.12 Alpha',
|
||||
'vitesse' => '10',
|
||||
'flottes' => '1',
|
||||
'attaques' => '1',
|
||||
'time_maintenance' => '20000',
|
||||
'galaxie' => '1',
|
||||
'nb_amas' => '1',
|
||||
'nb_systeme' => '99',
|
||||
'nb_planete' => '12',
|
||||
'first_page' => 'index.php',
|
||||
'url_images' => '',
|
||||
'db_prefix' => '',
|
||||
'mail_admin' => 'admin@halo-battle.s-fr.com',
|
||||
'mail_support' => 'technique@halo-battle.s-fr.com',
|
||||
'link' =>
|
||||
array (
|
||||
'self' => './',
|
||||
'accueil' => 'http://www.halo-battle.fr/',
|
||||
'blog' => 'http://www.halo-battle.fr/ark/',
|
||||
'jeu' => 'http://www.halo-battle.fr/',
|
||||
'inscription' => 'http://www.halo-battle.fr/register',
|
||||
'forum' => 'http://www.halo-battle.fr/forum/',
|
||||
'operateur' => '?p=operateur',
|
||||
),
|
||||
'menu' =>
|
||||
array (
|
||||
'accueil' => '?p=accueil',
|
||||
'operateur' => '?p=operateur',
|
||||
'batiments' => '?p=batiments',
|
||||
'caserne' => '?p=caserne',
|
||||
'chantierspatial' => '?p=chantierspatial',
|
||||
'chantierterrestre' => '?p=chantierterrestre',
|
||||
'defenses' => '?p=defenses',
|
||||
'laboratoire' => '?p=laboratoire',
|
||||
'arbre' => '?p=arbre',
|
||||
'ressources' => '?p=ressources',
|
||||
'gestion' => '?p=gestion',
|
||||
'marche' => '?p=marche',
|
||||
'bourse' => '?p=bourse',
|
||||
'flotte' => '?p=flotte',
|
||||
'armee' => '?p=prochainement',
|
||||
'carte' => '?p=carte',
|
||||
'options' => '?p=options',
|
||||
'messages' => '?p=messagerie',
|
||||
'envoie' => '?p=envoyer',
|
||||
'alliance' => '?p=alliances',
|
||||
'classement' => '?p=classement',
|
||||
'chat' => '?p=chat',
|
||||
'forums' => 'http://www.halo-battle.fr/forum/',
|
||||
'bugs' => 'http://www.halo-battle.fr/tester/',
|
||||
'faq' => '?p=faq',
|
||||
'deconnexion' => '?p=deconnexion',
|
||||
),
|
||||
'chrono' => '<!--Page générée en: $ secondes.-->',
|
||||
),
|
||||
'env' =>
|
||||
array (
|
||||
'auth' => '0',
|
||||
'ignore_user_abort' => '1',
|
||||
'error_level' => '6143',
|
||||
'header' =>
|
||||
array (
|
||||
'Content-Type' => 'text/html;charset=utf-8',
|
||||
),
|
||||
'ini' =>
|
||||
array (
|
||||
'allow_url_fopen' => '0',
|
||||
'allow_url_include' => '0',
|
||||
'display_errors' => '1',
|
||||
'display_startup_errors' => '1',
|
||||
'magic_quotes_runtime' => '0',
|
||||
'magic_quotes_sybase' => '0',
|
||||
'memory_limit' => '64M',
|
||||
'log_errors' => '1',
|
||||
),
|
||||
'log_php' => '1',
|
||||
'locale' =>
|
||||
array (
|
||||
0 => 'fr_FR.UTF8',
|
||||
1 => 'fr.UTF8',
|
||||
2 => 'fr_FR.UTF-8',
|
||||
3 => 'fr.UTF-8',
|
||||
),
|
||||
),
|
||||
'root' => '/var/www/halo-battle/htdocs/',
|
||||
'modules' =>
|
||||
array (
|
||||
0 => 'db',
|
||||
1 => 'session',
|
||||
2 => 'lang',
|
||||
3 => 'bbcode',
|
||||
4 => 'templates',
|
||||
5 => 'pistage',
|
||||
),
|
||||
'opt' =>
|
||||
array (
|
||||
'db' =>
|
||||
array (
|
||||
'type' => 'mysql',
|
||||
'profile' => 'default',
|
||||
'log' => '0',
|
||||
'crypt' => '',
|
||||
'no_connection' => 'Connexion à la base de donnée impossible',
|
||||
),
|
||||
'session' =>
|
||||
array (
|
||||
'active' => '1',
|
||||
'time' => '3600',
|
||||
'maxip' => '20',
|
||||
'cookie' => 'hbsession',
|
||||
'db' =>
|
||||
array (
|
||||
'table' => 'sessions',
|
||||
),
|
||||
),
|
||||
'lang' =>
|
||||
array (
|
||||
'type' => 'fr',
|
||||
),
|
||||
'bbcode' =>
|
||||
array (
|
||||
'smiley_dir' => './images/smile/',
|
||||
'smiley' =>
|
||||
array (
|
||||
'wink' => ':wink:',
|
||||
'biggrin' => ':D',
|
||||
'smile' => ':-)',
|
||||
'razz' => ':P',
|
||||
'eek' => ':shock:',
|
||||
'cool' => '8-)',
|
||||
'twisted' => ':twisted:',
|
||||
'evil' => ':evil:',
|
||||
'mad' => ':-x',
|
||||
'confused' => ':-?',
|
||||
'sad' => ':-(',
|
||||
'surprised' => ':-O',
|
||||
'neutral' => ':-|',
|
||||
'redface' => ':oops:',
|
||||
'rolleyes' => ':roll:',
|
||||
'lol' => ':lol:',
|
||||
),
|
||||
),
|
||||
'templates' =>
|
||||
array (
|
||||
'tpl' => '',
|
||||
'compile' => 'modules/templates/compile/',
|
||||
'config' => 'modules/templates/config/',
|
||||
'cache' => 'modules/templates/cache/',
|
||||
'profile' => 'default',
|
||||
),
|
||||
'pistage' =>
|
||||
array (
|
||||
'ips' => '82.245.190.225;84.101.175.59;86.214.198.131',
|
||||
),
|
||||
),
|
||||
'check' => '27fea96d5af3067bdfe2c679ca02fc44ecd1e0f21d456e436e480e7597dd521c',
|
||||
); ?>
|
||||
BIN
onyx2/cache/signatures/8.1.sign
vendored
BIN
onyx2/cache/signatures/8.1.sign
vendored
Binary file not shown.
|
Before Width: | Height: | Size: 79 KiB |
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configs active="1" root="/var/www/halo-battle/htdocs/" cache="1">
|
||||
<configs active="1" root="/home/battlehalo/halobattle.fr/beta/htdocs/" cache="1">
|
||||
<config match="admin.php">
|
||||
<var name="menu">
|
||||
<var name="accueil">?p=accueil</var>
|
||||
|
|
@ -23,23 +23,23 @@
|
|||
</config>
|
||||
<config match="*">
|
||||
<var name="serveur_name">Béta #1</var>
|
||||
<var name="version">1.12 Alpha</var>
|
||||
<var name="version">1.13 Béta</var>
|
||||
<var name="vitesse">10</var>
|
||||
<var name="flottes">1</var> <!-- Les flottes sont activées -->
|
||||
<var name="attaques">1</var> <!-- Les attaques sont activées -->
|
||||
<var name="attaques">0</var> <!-- Les attaques sont activées -->
|
||||
<var name="time_maintenance">20000</var> <!-- Heure de génération du classement et des tâches cron -->
|
||||
<var name="galaxie">1</var> <!-- Numéro de la galaxie -->
|
||||
<var name="nb_amas">1</var> <!-- Nombre d'amas dans la galaxie -->
|
||||
<var name="nb_systeme">99</var> <!-- Nombre de système dans chaque amas -->
|
||||
<var name="nb_planete">12</var> <!-- Nombre de planètes par systèmes -->
|
||||
<var name="first_page">index.php</var> <!-- Page principale -->
|
||||
<var name="url_images"></var> <!-- Adresse du serveur d'images et de contenu -->
|
||||
|
||||
<var name="url_images">http://content.halo-battle.fr/</var> <!-- Adresse du serveur d'images et de contenus -->
|
||||
|
||||
<var name="db_prefix"></var> <!-- Préfixe des tables dans la base de données -->
|
||||
|
||||
<var name="mail_admin">admin@halo-battle.s-fr.com</var>
|
||||
<var name="mail_support">technique@halo-battle.s-fr.com</var>
|
||||
|
||||
|
||||
<var name="mail_admin">admin@halo-battle.fr</var>
|
||||
<var name="mail_support">technique@halo-battle.fr</var>
|
||||
|
||||
<var name="link">
|
||||
<var name="self">./</var>
|
||||
<var name="accueil">http://www.halo-battle.fr/</var>
|
||||
|
|
@ -48,8 +48,10 @@
|
|||
<var name="inscription">http://www.halo-battle.fr/register</var>
|
||||
<var name="forum">http://www.halo-battle.fr/forum/</var>
|
||||
<var name="operateur">?p=operateur</var>
|
||||
|
||||
<var name="oubliemdp">?p=oubliemdp</var>
|
||||
</var>
|
||||
|
||||
|
||||
<var name="menu">
|
||||
<var name="accueil">?p=accueil</var>
|
||||
<var name="operateur">?p=operateur</var>
|
||||
|
|
@ -62,6 +64,7 @@
|
|||
<var name="arbre">?p=arbre</var>
|
||||
<var name="ressources">?p=ressources</var>
|
||||
<var name="gestion">?p=gestion</var>
|
||||
<var name="diplomatie">?p=diplomatie</var>
|
||||
<var name="marche">?p=marche</var>
|
||||
<var name="bourse">?p=bourse</var>
|
||||
<var name="flotte">?p=flotte</var>
|
||||
|
|
@ -69,14 +72,17 @@
|
|||
<var name="carte">?p=carte</var>
|
||||
<var name="options">?p=options</var>
|
||||
<var name="messages">?p=messagerie</var>
|
||||
<var name="envoie">?p=envoyer</var>
|
||||
<var name="alli_messagerie">?p=alli_messagerie</var>
|
||||
<var name="envoie">?p=messagerie&n=send</var>
|
||||
<var name="alliance">?p=alliances</var>
|
||||
<var name="alli_chat">?p=alli_chat</var>
|
||||
<var name="classement">?p=classement</var>
|
||||
<var name="chat">?p=chat</var>
|
||||
<var name="forums">http://www.halo-battle.fr/forum/</var>
|
||||
<var name="bugs">http://www.halo-battle.fr/tester/</var>
|
||||
<var name="bugs">http://issues.halo-battle.fr/</var>
|
||||
<var name="faq">?p=faq</var>
|
||||
<var name="deconnexion">?p=deconnexion</var>
|
||||
<var name="pilori">?p=pilori</var>
|
||||
</var>
|
||||
<!--
|
||||
<var name="rewrite_url">
|
||||
|
|
@ -85,7 +91,7 @@
|
|||
</var>
|
||||
-->
|
||||
<var name="chrono"><![CDATA[<!--Page générée en: $ secondes.-->]]></var>
|
||||
|
||||
|
||||
<env option="auth">0</env>
|
||||
<env option="ignore_user_abort">1</env>
|
||||
<env option="error_level">6143</env>
|
||||
|
|
@ -109,7 +115,7 @@
|
|||
<env option="2">fr_FR.UTF-8</env>
|
||||
<env option="3">fr.UTF-8</env>
|
||||
</env>
|
||||
|
||||
|
||||
<module name="db">
|
||||
<option name="type">mysql</option>
|
||||
<option name="profile">default</option>
|
||||
|
|
@ -117,7 +123,7 @@
|
|||
<option name="crypt"></option>
|
||||
<option name="no_connection"><![CDATA[Connexion à la base de donnée impossible]]></option>
|
||||
</module>
|
||||
|
||||
|
||||
<module name="session">
|
||||
<option name="active">1</option>
|
||||
<option name="time">3600</option>
|
||||
|
|
@ -127,9 +133,9 @@
|
|||
<option name="table">sessions</option>
|
||||
</option>
|
||||
</module>
|
||||
|
||||
|
||||
<module name="lang" />
|
||||
|
||||
|
||||
<module name="bbcode" />
|
||||
|
||||
<module name="templates">
|
||||
|
|
@ -139,13 +145,13 @@
|
|||
<option name="cache">modules/templates/cache/</option>
|
||||
</module>
|
||||
|
||||
<!--<module name="fermerServeur">
|
||||
<option name="type">1</option><!- 1: mise à jour prévue ; 2: mise à jour exceptionnelle ->
|
||||
<option name="temps">900</option> <!- temps en secondes ->
|
||||
</module>-->
|
||||
|
||||
<module name="fermerServeur">
|
||||
<option name="type">1</option><!-- 1: mise à jour prévue ; 2: mise à jour exceptionnelle -->
|
||||
<option name="temps">1300</option> <!-- temps en secondes -->
|
||||
</module>
|
||||
|
||||
<module name="pistage">
|
||||
<option name="ips">82.245.190.225;84.101.175.59;86.214.198.131</option>
|
||||
</module>
|
||||
</config>
|
||||
</configs>
|
||||
</configs>
|
||||
|
|
@ -2,9 +2,9 @@
|
|||
|
||||
if(!defined('ONYX')) exit;
|
||||
|
||||
$___profile['db'] = 'halo_battle';
|
||||
$___profile['db'] = 'hb_game_beta';
|
||||
$___profile['host'] = 'localhost';
|
||||
$___profile['user'] = 'root';
|
||||
$___profile['pass'] = 'rmss169';
|
||||
$___profile['pass'] = '';
|
||||
|
||||
?>
|
||||
|
|
|
|||
22
onyx2/include/admin/bdd.php
Normal file
22
onyx2/include/admin/bdd.php
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
|
||||
if (!empty($_POST["req"]))
|
||||
$req = gpc("req", "post");
|
||||
elseif (!empty($_GET["req"]))
|
||||
$req = gpc("req");
|
||||
else
|
||||
$req = "SHOW TABLES;";
|
||||
|
||||
$bdd = new BDD();
|
||||
$template->assign("reponses", $bdd->query($req));
|
||||
$template->assign("erreur", $bdd->erreur());
|
||||
$template->assign("affected", $bdd->affected());
|
||||
$bdd->deconnexion();
|
||||
|
||||
if (eregi("show tables", $req))
|
||||
$template->assign("lien", "SELECT * FROM ");
|
||||
|
||||
$pagea = 'bdd';
|
||||
$titre = 'Administration de la base de données';
|
||||
?>
|
||||
|
|
@ -1,17 +1,20 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$titre = 'Création d\'inscription';
|
||||
$pagea = 'inscription';
|
||||
$titre = "Création d'inscription";
|
||||
$pagea = "inscription";
|
||||
|
||||
if (!empty($_POST['HB_pseudo']) && !empty($_POST['race']))
|
||||
if (!empty($_POST["HB_pseudo"]) && !empty($_POST["race"]))
|
||||
{
|
||||
if (empty($_POST["HB_conf"]) && empty($_POST["HB_mdp"]))
|
||||
$_POST["HB_mdp"] = $_POST["HB_conf"] = gen_mdp(9);
|
||||
|
||||
if ($_POST['HB_conf'] == $_POST['HB_mdp'] && !empty($_POST['HB_mdp']))
|
||||
{
|
||||
if ($_POST['HB_conf'] == $_POST['HB_mdp'] && !empty($_POST['HB_mdp']))
|
||||
{
|
||||
$res = $_POST;
|
||||
$cds = sha1($res['HB_pseudo'].'$'.$res['race'].'£'.$res['HB_mdp'].'#'.$res['HB_mail'].'ß'.time().'Ó'.$_SERVER['HTTP_USER_AGENT'].'♀☻'.$_SERVER['REMOTE_ADDR'].$res['HB_placement']);
|
||||
erreur('URL : ?p=njoueur&nom='.$res['HB_pseudo'].'&race='.$res['race'].'&mdp='.$res['HB_mdp'].'&mail='.$res['HB_mail'].'&ti='.time().'&placement='.$res['HB_placement'].'&cds='.$cds.'<br /><br />L\'inscription doit avoir lieu par vous même en raison des procédures de sécurités !', "white");
|
||||
}
|
||||
else
|
||||
erreur('Mot de passe incorrect !');
|
||||
$_POST['HB_mdp'] = cxor(gpc("HB_mdp", "post"), sha1(gpc("HB_pseudo", "post").'£'.gpc("race", "post")));
|
||||
$cds = sha1(gpc("HB_pseudo", "post").'$'.gpc("race", "post").'£'.gpc("HB_mdp", "post").'#'.gpc("HB_mail", "post").'ß'.time().'Ó'.$_SERVER['HTTP_USER_AGENT'].'♀☻'.$_SERVER['REMOTE_ADDR'].gpc("HB_placement", "post"));
|
||||
erreur('MDP: <em>'.gpc("HB_conf", "post").'</em><br />URL : <a href="?p=njoueur&nom='.gpc("HB_pseudo", "post").'&race='.gpc("race", "post").'&mdp='.strhex(gpc("HB_mdp", "post")).'&mail='.gpc("HB_mail", "post").'&ti='.time().'&placement='.gpc("HB_placement", "post").'&cds='.$cds.'">Lien</a><br /><br />L\'inscription doit avoir lieu par vous même en raison des procédures de sécurités !', "white");
|
||||
}
|
||||
else
|
||||
erreur('Mot de passe incorrect !');
|
||||
}
|
||||
?>
|
||||
|
|
@ -4,32 +4,51 @@ $pagea = 'vip';
|
|||
$titre = 'Vérification IP';
|
||||
|
||||
$timelimit = date('Y-m-d', mktime(0, 0, 0, date("m"), date("d"), date("Y"))); //2008-06-17 18:15:00
|
||||
$chapeau->connexion();
|
||||
$page = gpc('v');
|
||||
if (empty($page) || !is_numeric($page)) $page = 0;
|
||||
if (empty($page) || !is_numeric($page))
|
||||
$page = 0;
|
||||
|
||||
$act = gpc('act');
|
||||
if ($act == 'multiok') $chapeau->query("UPDATE $table_user SET multi = '1' WHERE id = ".$_GET['util'].";");
|
||||
if ($act == 'multiok')
|
||||
{
|
||||
$bdd = new BDD();
|
||||
$user = intval(gpc('util'));
|
||||
$bdd->query("UPDATE $table_user SET multi = '1' WHERE id = ".$user.";");
|
||||
$bdd->deconnexion();
|
||||
unset($user);
|
||||
}
|
||||
|
||||
if (isset($_GET['ip'])) $req = mysql_query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE ip = '".$_GET['ip']."' ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['util']) && isset($_GET['comp'])) $req = mysql_query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE id_util = ".$_GET['util']." OR id_util = ".$_GET['comp']." ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['util'])) $req = mysql_query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE id_util = '".$_GET['util']."' ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['tri'])) $req = mysql_query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id ORDER BY ".$_GET['tri']." ASC;");
|
||||
else $req = mysql_query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE R.time > '$timelimit 00:00:00' ORDER BY R.ip ASC LIMIT ".($page*75).",75;");
|
||||
$bdd = new BDD();
|
||||
if (isset($_GET['ip']))
|
||||
$req = $bdd->query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE ip = '".gpc('ip')."' ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['util']) && isset($_GET['comp']))
|
||||
$req = $bdd->query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE id_util = ".intval(gpc('util'))." OR id_util = ".intval(gpc('comp'))." ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['util']))
|
||||
$req = $bdd->query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE id_util = '".intval(gpc('util'))."' ORDER BY ip ASC;");
|
||||
elseif (isset($_GET['tri']))
|
||||
$req = $bdd->query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id ORDER BY ".gpc('tri')." ASC;");
|
||||
else
|
||||
$req = $bdd->query("SELECT R.id, R.id_util, R.time, R.ip, U.pseudo, U.mv, U.multi FROM $table_registre_identification R INNER JOIN $table_user U ON R.id_util = U.id WHERE R.time > '$timelimit 00:00:00' ORDER BY R.ip ASC LIMIT ".($page*75).",75;");
|
||||
//SELECT last_ip,COUNT(*) FROM user GROUP BY last_ip HAVING COUNT(*)>1
|
||||
$nbpage = $chapeau->unique_query("SELECT COUNT(id) AS nb FROM $table_registre_identification WHERE time > '$timelimit 00:00:00';");
|
||||
$chapeau->deconnexion();
|
||||
$nbpage = $bdd->unique_query("SELECT COUNT(id) AS nb FROM $table_registre_identification WHERE time > '$timelimit 00:00:00';");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$anc = array('ip' => 0, 'id_util' => 0);
|
||||
$tableau = array();
|
||||
while($resultat = mysql_fetch_array($req)) {
|
||||
if ($resultat['mv'] == 3) $color = 'DFBF00';
|
||||
elseif ($resultat['multi'] == 1 && $anc['ip'] == $resultat['ip'] && $anc['id_util'] != $resultat['id_util']) $color = 'EE66EE';
|
||||
elseif ($anc['ip'] == $resultat['ip'] && $anc['id_util'] != $resultat['id_util']) $color = 'FF0000';
|
||||
else $color = false;
|
||||
$tableau[] = array($resultat['ip'], 'absent pour plus de rapidité'/*gethostbyaddr($resultat['ip'])*/, $resultat['id_util'], $resultat['pseudo'], $resultat['time'], $resultat['mv'], $color);
|
||||
$anc = $resultat;
|
||||
}
|
||||
foreach($req as $resultat)
|
||||
{
|
||||
if ($resultat['mv'] == 3)
|
||||
$color = 'DFBF00';
|
||||
elseif ($resultat['multi'] == 1 && $anc['ip'] == $resultat['ip'] && $anc['id_util'] != $resultat['id_util'])
|
||||
$color = 'EE66EE';
|
||||
elseif ($anc['ip'] == $resultat['ip'] && $anc['id_util'] != $resultat['id_util'])
|
||||
$color = 'FF0000';
|
||||
else
|
||||
$color = false;
|
||||
|
||||
$tableau[] = array($resultat['ip'], 'absent pour plus de rapidité'/*gethostbyaddr($resultat['ip'])*/, $resultat['id_util'], $resultat['pseudo'], $resultat['time'], $resultat['mv'], $color);
|
||||
$anc = $resultat;
|
||||
}
|
||||
$template->assign('ips', $tableau);
|
||||
$template->assign('numpage', $page);
|
||||
$template->assign('nbpage', floor($nbpage['nb']/75));
|
||||
|
|
|
|||
|
|
@ -1,52 +1,98 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$pagea = 'print';
|
||||
$titre = 'Vérification joueur';
|
||||
$titre = 'Vérification joueur';
|
||||
|
||||
$template->assign('linkpage', 'vjoueurs');
|
||||
|
||||
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
|
||||
$pagea = 'print_key';
|
||||
$id_plan = $_GET['id'];
|
||||
$key = $_GET['key'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($id_plan);
|
||||
$chapeau->escape($key);
|
||||
$reqJ = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id_plan';");
|
||||
$req = $chapeau->unique_query("DESCRIBE $table_user $key;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $reqJ);
|
||||
$template->assign('type', explode('(', $req['Type']));
|
||||
$template->assign('idPlan', $id_plan);
|
||||
$template->assign('key', $_GET['key']);
|
||||
}
|
||||
elseif (!empty($_GET['id'])) {
|
||||
$id_plan = $_GET['id'];
|
||||
if (isset($_POST['key']) && isset($_POST['mod'])) {
|
||||
$key = $_POST['key'];
|
||||
$mod = $_POST['mod'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($mod);
|
||||
$chapeau->escape($id_plan);
|
||||
$chapeau->query("UPDATE $table_user SET $key = '$mod' WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
//Changement du nom d'utilisateur
|
||||
if (!empty($_GET['id']) && !empty($_POST['key']) && !empty($_POST['mod']) && $_POST['key'] == 'pseudo')
|
||||
{
|
||||
$id_plan = intval(gpc('id'));
|
||||
$mod = gpc('mod', 'post');
|
||||
|
||||
$liste = "abcdefghijklmnopqrstuvwxyz./!*123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
$code = '';
|
||||
while(strlen($code) <= 8)
|
||||
$code .= $liste[rand(0,64)];
|
||||
|
||||
$mdp = mdp($mod, $code);
|
||||
|
||||
$bdd = new BDD();
|
||||
$reqMail = $bdd->unique_query("SELECT mail FROM $table_user WHERE id = $id_plan;");
|
||||
$bdd->escape($mod);
|
||||
$reqPseudo = $bdd->query("SELECT mail FROM $table_user WHERE pseudo = '$mod';");
|
||||
if ($reqPseudo !== NULL)
|
||||
erreur('Nom d\'utilisateur déjà utilisé. Impossible de faire le changement !');
|
||||
$bdd->query("UPDATE $table_user SET pseudo = '$mod', mdp = '".$mdp[0]."', mdp_var = '".$mdp[1]."' WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
if(send_mail($reqMail['mail'], "Nouveau nom d'utilisateur", "Bonjour ".$mod.",\n\nVous recevez ce mail suite au changement de votre nom d'utilisateur sur le serveur ".$VAR["serveur_name"].".\nCe changement a été effectué par un opérateur de la galaxie, sur votre demande ou dans le cadre des règles du jeu.\nDe plus, pour votre sécurité, un nouveau mot de passe vous a été automatiquement attribué.\n\nVos nouvelles informations personnelles sont les suivantes :\n\tNom d'utilisateur : ".$mod."\n\tMot de passe : '.$code.'\n\nVotre ancien nom d'utilisateur et mot de passe ne sont plus valide à partir de maintenant et vous devez utiliser les données ci-dessus pour vous connecter.\n\nSi vous rencontrez des problèmes suites à ce changement, n'hésitez pas à contacter l'opérateur qui suivit votre demande.\n\nPour votre sécurité, nous vous rappelons qu'il est dangeureux de conserver un mail contenant des données personnelles. Pensez donc à supprimer ce mail une fois que vous vous serez connecté au jeu.\n\nL'équipe d'Halo-Battle"))
|
||||
erreur("Nom d'utilisateur mis à jour avec succès. Un mail a été envoyé à l'utilisateur contenant un nouveau mot de passe.", "green");
|
||||
else
|
||||
erreur("Une erreur est survenue lors de l'envoie du mail.");
|
||||
}
|
||||
$chapeau->connexion();
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (!empty($_GET['name'])) {
|
||||
$name = $_GET['name'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($name);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=vjoueurs&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
//Changement du mot de passe
|
||||
elseif (!empty($_GET['id']) && !empty($_POST['key']) && !empty($_POST['mod']) && $_POST['key'] == 'mdp')
|
||||
{
|
||||
$id_plan = intval(gpc('id'));
|
||||
$mod = gpc('mod', 'post');
|
||||
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT pseudo, mdp_var FROM $table_user WHERE id = $id_plan;");
|
||||
$mdp = mdp($req["pseudo"], $mod, $req["mdp_var"]);
|
||||
|
||||
$bdd->query("UPDATE $table_user SET mdp = '$mdp' WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
erreur("Mot de passe changé avec succès.<br />Pensez à avertir l'utilisateur de ce changement !", "green");
|
||||
}
|
||||
elseif (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id' && $_GET['key'] != 'mdpNOUV' && $_GET['key'] != 'auth_level' && $_GET['key'] != 'mdp_var')
|
||||
{
|
||||
$pagea = 'print_key';
|
||||
$id_plan = intval(gpc('id'));
|
||||
$key = gpc('key');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($key);
|
||||
$reqJ = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $id_plan;");
|
||||
$req = $bdd->unique_query("DESCRIBE $table_user $key;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('tableau', $reqJ);
|
||||
$template->assign('type', explode('(', $req['Type']));
|
||||
$template->assign('idPlan', $id_plan);
|
||||
$template->assign('key', $key);
|
||||
}
|
||||
elseif (!empty($_GET['id']))
|
||||
{
|
||||
$id_plan = intval(gpc('id'));
|
||||
if (isset($_POST['key']) && isset($_POST['mod']))
|
||||
{
|
||||
$key = gpc('key', 'post');
|
||||
$mod = gpc('mod', 'post');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($mod);
|
||||
$bdd->escape($key);
|
||||
$bdd->query("UPDATE $table_user SET $key = '$mod' WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (!empty($_GET['name']))
|
||||
{
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
|
||||
$bdd->deconnexion();
|
||||
header('Location: admin.php?p=vjoueurs&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else
|
||||
$pagea = 'print_choixU';
|
||||
}
|
||||
?>
|
||||
24
onyx2/include/admin/mail_mass.php
Normal file
24
onyx2/include/admin/mail_mass.php
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$pagea = 'mail_mass';
|
||||
$titre = 'Envoie de mail en masse aux joueurs de la galaxie';
|
||||
|
||||
$template->assign('linkpage', 'mail_mass');
|
||||
|
||||
if (!empty($_POST['sujet']) || !empty($_POST['message'])) {
|
||||
$sujet = "Halo-Battle :: ".gpc('sujet', 'post');
|
||||
$message = gpc('message', 'post');
|
||||
$bdd = new BDD();
|
||||
$users = $bdd->query("SELECT pseudo, mail FROM $table_user;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
foreach($users as $user)
|
||||
{
|
||||
$messageJ = str_replace('$pseudo', $user["pseudo"], $message);
|
||||
send_mail($user["mail"], $sujet, $messageJ);
|
||||
//print 'Mail : '.$user["mail"].' ; sujet : '.$sujet.' ; message : '.$messageJ.'<br />';
|
||||
}
|
||||
|
||||
erreur("Tous les mails ont été envoyés avec succès.", "green");
|
||||
}
|
||||
?>
|
||||
|
|
@ -5,61 +5,73 @@ $titre = 'Vérification planète';
|
|||
|
||||
$template->assign('linkpage', 'vplanetes');
|
||||
|
||||
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] == 'hash_planete') {
|
||||
$id_plan = $_GET['id'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->query("UPDATE $table_planete SET hash_planete = SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)) WHERE id = $id_plan;");
|
||||
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] == 'hash_planete')
|
||||
{
|
||||
$id_plan = intval(gpc('id'));
|
||||
$bdd = new BDD();
|
||||
$bdd->query("UPDATE $table_planete SET hash_planete = SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)) WHERE id = $id_plan;");
|
||||
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = $id_plan;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
|
||||
$pagea = 'print_key';
|
||||
$id_plan = $_GET['id'];
|
||||
$key = $_GET['key'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($id_plan);
|
||||
$chapeau->escape($key);
|
||||
$reqp = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = '$id_plan';");
|
||||
$req = $chapeau->unique_query("DESCRIBE $table_planete $key;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $reqp);
|
||||
$template->assign('type', explode('(', $req['Type']));
|
||||
$template->assign('idPlan', $id_plan);
|
||||
$template->assign('key', $_GET['key']);
|
||||
}
|
||||
elseif (!empty($_GET['id'])) {
|
||||
$id_plan = $_GET['id'];
|
||||
if (isset($_POST['key']) && isset($_POST['mod']) && $_POST['key'] != 'id') {
|
||||
$key = $_POST['key'];
|
||||
$mod = $_POST['mod'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($mod);
|
||||
$chapeau->query("UPDATE $table_planete SET $key = '$mod' WHERE id = $id_plan;");
|
||||
$chapeau->deconnexion();
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_planete WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
$chapeau->connexion();
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_planete WHERE id = $id_plan;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (isset($_GET['amas']) && isset($_GET['ss']) && !empty($_GET['pos'])) {
|
||||
$amas = $_GET['amas'];
|
||||
$ss = $_GET['ss'];
|
||||
$pos = $_GET['pos'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($amas);
|
||||
$chapeau->escape($ss);
|
||||
$chapeau->escape($pos);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_planete WHERE galaxie = '$amas' AND ss = '$ss' AND position = '$pos';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=vplanetes&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
elseif (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id')
|
||||
{
|
||||
$pagea = 'print_key';
|
||||
$id_plan = intval(gpc('id'));
|
||||
$key = intval(gpc('key'));
|
||||
$bdd = new BDD();
|
||||
$reqp = $bdd->unique_query("SELECT * FROM $table_planete WHERE id = $id_plan;");
|
||||
$req = $bdd->unique_query("DESCRIBE $table_planete $key;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('tableau', $reqp);
|
||||
$template->assign('type', explode('(', $req['Type']));
|
||||
$template->assign('idPlan', $id_plan);
|
||||
$template->assign('key', $_GET['key']);
|
||||
}
|
||||
elseif (!empty($_GET['id']))
|
||||
{
|
||||
$id_plan = intval(gpc('id'));
|
||||
if (isset($_POST['key']) && isset($_POST['mod']) && $_POST['key'] != 'id')
|
||||
{
|
||||
$key = gpc('key', 'post');
|
||||
$mod = gpc('mod', 'post');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($key);
|
||||
$bdd->escape($mod);
|
||||
$bdd->query("UPDATE $table_planete SET $key = '$mod' WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_planete WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (isset($_GET['amas']) && isset($_GET['ss']) && !empty($_GET['pos']))
|
||||
{
|
||||
$amas = intval(gpc('amas'));
|
||||
$ss = intval(gpc('ss'));
|
||||
$pos = intval(gpc('pos'));
|
||||
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_planete WHERE galaxie = $amas AND ss = $ss AND position = $pos;");
|
||||
$bdd->deconnexion();
|
||||
header('Location: '.$VAR["menu"]["vplanetes"].'&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
elseif (isset($_GET['format']))
|
||||
{
|
||||
preg_match('#^\[?([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2})\]?$#', gpc('format'), $position);
|
||||
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_planete WHERE galaxie = ".$position[1]." AND ss = ".$position[2]." AND position = ".$position[3].";");
|
||||
$bdd->deconnexion();
|
||||
header('Location: '.$VAR["menu"]["vplanetes"].'&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else
|
||||
$pagea = 'print_choixP';
|
||||
}
|
||||
?>
|
||||
|
|
@ -5,38 +5,38 @@ $pagea = 'erreur';
|
|||
|
||||
$template->assign('linkpage', 'cjoueurs');
|
||||
|
||||
if ($SESS->level >= 5 && !empty($_GET['id'])) {
|
||||
$name = gpc('id');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT id, pseudo, auth_level FROM $table_user WHERE id = '$name';");
|
||||
$bdd->deconnexion();
|
||||
if ($req['auth_level'] >= $SESS->level) {
|
||||
$template->assign('message', 'Vous ne pouvez pas prendre le contrôle de cet utilisateur !');
|
||||
}
|
||||
else {
|
||||
$bdd->reconnexion();
|
||||
$reqPl = $bdd->unique_query("SELECT id, nom_planete FROM $table_planete WHERE id_user = '".$req['id']."' LIMIT 1;");
|
||||
if ($SESS->level >= 5 && !empty($_GET['id']))
|
||||
{
|
||||
$name = intval(gpc('id'));
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT id, pseudo, auth_level FROM $table_user WHERE id = $name;");
|
||||
$bdd->deconnexion();
|
||||
if ($req['auth_level'] >= $SESS->level)
|
||||
$template->assign('message', 'Vous ne pouvez pas prendre le contrôle de cet utilisateur !');
|
||||
else
|
||||
{
|
||||
$bdd->reconnexion();
|
||||
$reqPl = $bdd->unique_query("SELECT id, nom_planete FROM $table_planete WHERE id_user = '".$req['id']."' LIMIT 1;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
if (empty($SESS->values['souscontrole'])) $SESS->values['souscontrole'] = array($SESS->values['id'], $SESS->values['idPlan']);
|
||||
$SESS->values['id'] = $req['id'];
|
||||
$SESS->values['idPlan'] = $reqPl['id'];
|
||||
$SESS->put();
|
||||
if (empty($SESS->values['souscontrole'])) $SESS->values['souscontrole'] = array($SESS->values['id'], $SESS->values['idPlan']);
|
||||
$SESS->values['id'] = $req['id'];
|
||||
$SESS->values['idPlan'] = $reqPl['id'];
|
||||
$SESS->put();
|
||||
|
||||
$template->assign('message', 'Vous contrôlez maintenant le joueur '.$req['pseudo'].'.<br />Planète '.$reqPl['nom_planete'].' sélectionnée !');
|
||||
$template->assign('message', 'Vous contrôlez maintenant le joueur '.$req['pseudo'].'.<br />Planète '.$reqPl['nom_planete'].' sélectionnée !');
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif (!empty($_GET['name'])) {
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '$name';");
|
||||
$bdd->deconnexion();
|
||||
header('Location: admin.php?p=cjoueurs&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
elseif (!empty($_GET['name']))
|
||||
{
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '$name';");
|
||||
$bdd->deconnexion();
|
||||
header('Location: admin.php?p=cjoueurs&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else
|
||||
$pagea = 'print_choixU';
|
||||
}
|
||||
?>
|
||||
42
onyx2/include/admin/proxy.php
Normal file
42
onyx2/include/admin/proxy.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$pagea = 'vide';
|
||||
$titre = 'Mise à jour de la liste des proxys';
|
||||
|
||||
function traiterfichier($uri, &$list)
|
||||
{
|
||||
$fp = fopen($uri, "r");
|
||||
while (!feof($fp))
|
||||
{
|
||||
$buffer = fgets($fp);
|
||||
if (preg_match("#^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}#", $buffer, $match))
|
||||
$list[] = $match[0];
|
||||
//$list[] = substr($buffer, 0, strpos($buffer, ":"));
|
||||
}
|
||||
fclose($fp);
|
||||
}
|
||||
|
||||
$list = array();
|
||||
|
||||
traiterfichier("http://www.proxylists.net/socks4.txt", $list);
|
||||
traiterfichier("http://www.proxylists.net/socks5.txt", $list);
|
||||
traiterfichier("http://www.proxylists.net/http_highanon.txt", $list);
|
||||
traiterfichier("http://www.proxylists.net/http.txt", $list);
|
||||
|
||||
traiterfichier("http://www.textproxylists.com/proxy.php?anonymous", $list);
|
||||
traiterfichier("http://www.textproxylists.com/proxy.php?highanonymity", $list);
|
||||
traiterfichier("http://www.textproxylists.com/proxy.php?codeen", $list);
|
||||
traiterfichier("http://www.textproxylists.com/proxy.php?transparent", $list);
|
||||
traiterfichier("http://www.textproxylists.com/proxy.php?nontransparent", $list);
|
||||
//traiterfichier("http://www.textproxylists.com/proxy.php?allproxy", $list);
|
||||
|
||||
//traiterfichier("http://www.multiproxy.org/txt_anon/proxy.txt", $list);
|
||||
traiterfichier("http://www.multiproxy.org/txt_all/proxy.txt", $list);
|
||||
|
||||
$bdd = new BDD();
|
||||
$bdd->query("TRUNCATE TABLE `proxy_list`;");
|
||||
$bdd->query("INSERT INTO proxy_list VALUES ('".implode("'),('", $list)."');");
|
||||
$bdd->deconnexion();
|
||||
|
||||
erreur("Procédure terminée, ".count($list)." proxys listés.", "green");
|
||||
?>
|
||||
|
|
@ -5,22 +5,27 @@ $titre = 'Afficher les rapports d\'un joueur';
|
|||
|
||||
$template->assign('linkpage', 'vrapports');
|
||||
|
||||
if (!empty($_GET['name'])) {
|
||||
$id_user = $_GET['name'];
|
||||
$chapeau->connexion();
|
||||
$req = $chapeau->query("SELECT * FROM $table_mail WHERE destinataire = '$id_user' AND expediteur = '' ORDER BY temps DESC;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_user);
|
||||
}
|
||||
elseif (!empty($_GET['id'])) {
|
||||
$chapeau->connexion();
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '".mysql_real_escape_string($_GET['id'])."';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=vrapports&name='.$req['pseudo']);
|
||||
if (!empty($_GET['id']))
|
||||
{
|
||||
$id_user = intval(gpc('id'));
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->query("SELECT * FROM $table_mail WHERE destinataire = $id_user AND expediteur = '' ORDER BY temps DESC;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_user);
|
||||
$template->assign('script', '<script>for (j=0; document.getElementsByName(j)[0]; j++) hide(document.getElementsByName(j)[0]);</script>');
|
||||
}
|
||||
elseif (!empty($_GET['name'])) {
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '".$name."';");
|
||||
$bdd->deconnexion();
|
||||
|
||||
header('Location: admin.php?p=vrapports&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
else
|
||||
$pagea = 'print_choixU';
|
||||
}
|
||||
?>
|
||||
|
|
@ -5,38 +5,41 @@ $pagea = 'erreur';
|
|||
|
||||
$template->assign('linkpage', 'sjoueurs');
|
||||
|
||||
if (!empty($_GET['id']) && !empty($_GET['sanc']) && (!empty($_GET['raisonmv']) || $_GET['sanc'] < 0)) {
|
||||
$raisonmv = $_GET['raisonmv'];
|
||||
$id_plan = $_GET['id'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($raisonmv);
|
||||
$chapeau->escape($id_plan);
|
||||
if (!empty($_GET['id']) && !empty($_GET['sanc']) && (!empty($_GET['raisonmv']) || $_GET['sanc'] < 0))
|
||||
{
|
||||
$raisonmv = gpc('raisonmv');
|
||||
$id_plan = intval(gpc('id'));
|
||||
$sanc = gpc('sanc');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($raisonmv);
|
||||
|
||||
if ($sanc == 'definitif' || $sanc== 'définitif' || $sanc == 'd')
|
||||
{
|
||||
$bdd->query("UPDATE $table_user SET mv = '3', raisonmv = '$raisonmv', operateurmv = $id_user WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
if ($_GET['sanc'] == 'definitif' || $_GET['sanc'] == 'définitif' || $_GET['sanc'] == 'd') {
|
||||
$chapeau->query("UPDATE $table_user SET mv = '3', raisonmv = '$raisonmv', operateurmv = '$id_user' WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('message', 'Le joueur a été banni définitivement !');
|
||||
}
|
||||
else
|
||||
{
|
||||
$time = time() + $sanc * 86400 - 259200;
|
||||
$bdd->query("UPDATE $table_user SET mv = '2', last_visite = $time, raisonmv = '$raisonmv', operateurmv = $id_user WHERE id = $id_plan;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('message', 'Le joueur a été banni définitivement !');
|
||||
$template->assign('message', 'Le joueur a été placé en mode vacances !');
|
||||
}
|
||||
}
|
||||
else {
|
||||
$sanc = $_GET['sanc'];
|
||||
$time = time() + $_GET['sanc'] * 86400 - 259200;
|
||||
$chapeau->query("UPDATE $table_user SET mv = '2', last_visite = '$time', raisonmv = '$raisonmv', operateurmv = '$id_user' WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
elseif (!empty($_GET['name']) && !empty($_GET['sanc']) && isset($_GET['raisonmv']))
|
||||
{
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT id FROM $table_user WHERE pseudo = '$name';");
|
||||
$bdd->deconnexion();
|
||||
|
||||
$template->assign('message', 'Le joueur a été placé en mode vacances !');
|
||||
header('Location: '.$VAR["menu"]["sjoueur"].'&sanc='.gpc('sanc').'&raisonmv='.gpc('raisonmv').'&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
elseif (!empty($_GET['name']) && !empty($_GET['sanc']) && isset($_GET['raisonmv'])) {
|
||||
$name = $_GET['name'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($name);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=sjoueurs&sanc='.$_GET['sanc'].'&raisonmv='.$_GET['raisonmv'].'&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
else
|
||||
$pagea = 'sanctionU_choix';
|
||||
}
|
||||
?>
|
||||
54
onyx2/include/admin/snalliances.php
Normal file
54
onyx2/include/admin/snalliances.php
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<?php
|
||||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
$pagea = 'print';
|
||||
$titre = 'Vue des futurs alliances';
|
||||
|
||||
$template->assign('linkpage', 'snalliances');
|
||||
|
||||
//TODO tout est à faire
|
||||
|
||||
if (!empty($_GET['id']) && !empty($_GET['key']) && $_GET['key'] != 'id') {
|
||||
$pagea = 'print_key';
|
||||
$id_plan = $_GET['id'];
|
||||
$key = $_GET['key'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($id_plan);
|
||||
$chapeau->escape($key);
|
||||
$reqA = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE id = '$id_plan';");
|
||||
$req = $chapeau->unique_query("DESCRIBE $table_alliances $key;");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $reqA);
|
||||
$template->assign('type', explode('(', $req['Type']));
|
||||
$template->assign('idPlan', $id_plan);
|
||||
$template->assign('key', $_GET['key']);
|
||||
}
|
||||
elseif (!empty($_GET['id'])) {
|
||||
$id_plan = $_GET['id'];
|
||||
if (isset($_POST['key']) && isset($_POST['mod'])) {
|
||||
$key = $_POST['key'];
|
||||
$mod = $_POST['mod'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($mod);
|
||||
$chapeau->escape($id_plan);
|
||||
$chapeau->query("UPDATE $table_alliances SET $key = '$mod' WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
}
|
||||
$chapeau->connexion();
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE id = '$id_plan';");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('tableau', $req);
|
||||
$template->assign('idPlan', $id_plan);
|
||||
}
|
||||
elseif (!empty($_GET['name'])) {
|
||||
$name = $_GET['name'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($name);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_alliances WHERE nom = '$name';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=valliances&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
$pagea = 'print_choixU';
|
||||
}
|
||||
?>
|
||||
|
|
@ -5,38 +5,37 @@ $pagea = 'erreur';
|
|||
|
||||
$template->assign('linkpage', 'djoueurs');
|
||||
|
||||
if ($sess->level >= 5 && !empty($_GET['id'])) {
|
||||
$id = $_GET['id'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($id);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE id = '$id';");
|
||||
$chapeau->deconnexion();
|
||||
if ($req) {
|
||||
$nom = trouvNom($id);
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($nom);
|
||||
$chapeau->query("DELETE FROM $table_mail WHERE destinataire = '$nom';");
|
||||
$chapeau->query("DELETE FROM $table_user WHERE id = '$id';");
|
||||
$chapeau->query("DELETE FROM $table_flottes WHERE id_user = '$id';");
|
||||
$chapeau->query("DELETE FROM $table_planete WHERE id_user = '$id';");
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('message', 'Le joueur a été supprimé du jeu ainsi que toutes les données le concernant !');
|
||||
if ($SESS->level >= 5 && !empty($_GET['id']))
|
||||
{
|
||||
$id = intval(gpc('id'));
|
||||
$bdd = new BDD();
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_user WHERE id = $id;");
|
||||
if ($req && $req["auth_level"] < 4)
|
||||
{
|
||||
$bdd->query("DELETE FROM $table_mail WHERE destinataire = $id;");
|
||||
$bdd->query("DELETE FROM $table_user WHERE id = $id;");
|
||||
$bdd->query("DELETE FROM $table_flottes WHERE id_user = $id;");
|
||||
$bdd->query("DELETE FROM $table_planete WHERE id_user = $id;");
|
||||
$bdd->deconnexion();
|
||||
$template->assign('message', 'Le joueur '.$id.' ('.$req['pseudo'].') a été supprimé du jeu ainsi que toutes les données le concernant !<br />Vérifiez qu\'il ne soit pas fondateur d\'une alliance ou d\'une mission groupée.');
|
||||
}
|
||||
else
|
||||
{
|
||||
$bdd->deconnexion();
|
||||
$template->assign('message', 'Le joueur n\'a pas été trouvé ou vous n\'avez pas les permissions de le supprimer !');
|
||||
}
|
||||
}
|
||||
else {
|
||||
$chapeau->deconnexion();
|
||||
$template->assign('message', 'Le joueur n\'a pas été trouvé !');
|
||||
elseif (!empty($_GET['name']))
|
||||
{
|
||||
$name = gpc('name');
|
||||
$bdd = new BDD();
|
||||
$bdd->escape($name);
|
||||
$req = $bdd->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
|
||||
$bdd->deconnexion();
|
||||
|
||||
header('Location: '.$VAR["menu"]["djoueurs"].'&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
elseif (!empty($_GET['name'])) {
|
||||
$name = $_GET['name'];
|
||||
$chapeau->connexion();
|
||||
$chapeau->escape($name);
|
||||
$req = $chapeau->unique_query("SELECT * FROM $table_user WHERE pseudo = '$name';");
|
||||
$chapeau->deconnexion();
|
||||
header('Location: admin.php?p=djoueurs&id='.$req['id']);
|
||||
exit;
|
||||
}
|
||||
else {
|
||||
else
|
||||
$pagea = 'print_choixU';
|
||||
}
|
||||
?>
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
<?php
|
||||
|
||||
if (empty($sess->values['connected']) && !defined("xCSRF"))
|
||||
if (empty($sess->values["connected"]) && !defined("xCSRF"))
|
||||
define("xCSRF", true);
|
||||
|
||||
require_once("function.php"); //Inclusion des fonctions principales
|
||||
|
|
@ -8,53 +8,49 @@ require_once("tables.php"); //Inclusion des noms des tables de base de données
|
|||
|
||||
//On prépare le gestionnaire de templates
|
||||
$template = new Template();
|
||||
$template->assign('date', strftime("%A %d %B %Y %H:%M"));
|
||||
$template->assign('datehb', strftime("/%a %d %b %Y/%H%M %S"));
|
||||
$template->assign('link', array_map("url", $VAR['link']));
|
||||
$template->assign('url_serveur', $_SERVER['HTTP_HOST']);
|
||||
$template->assign('url_images', $VAR['url_images']);
|
||||
$template->assign("link", array_map("url", $VAR["link"]));
|
||||
$template->assign("url_serveur", $_SERVER["HTTP_HOST"]);
|
||||
$template->assign("url_images", $VAR["url_images"]);
|
||||
|
||||
//On charge la session
|
||||
$SESS = new Session();
|
||||
|
||||
//Extraction des données en cache
|
||||
$header = Cache::read('headerNB');
|
||||
//Extraction des données en cache pour le header, sinon création du cache
|
||||
$header = Cache::read("headerNB");
|
||||
if (empty($header))
|
||||
{
|
||||
$bdd = new BDD();
|
||||
|
||||
|
||||
$nbcovie = $bdd->unique_query("SELECT COUNT(id) AS covenants FROM $table_user WHERE race = 'covenant';");
|
||||
$nbhumain = $bdd->unique_query("SELECT COUNT(id) AS humains FROM $table_user WHERE race = 'humain';");
|
||||
$enligne = $bdd->unique_query("SELECT COUNT(session) AS enligne FROM sessions WHERE active = true AND var != '0';");
|
||||
$infos = $bdd->query("SELECT * FROM $table_infoshead ORDER BY id DESC;");
|
||||
$msgdem = $bdd->unique_query("SELECT titre FROM $table_messages_demarrage ORDER BY id DESC LIMIT 1;");
|
||||
|
||||
|
||||
$bdd->deconnexion();
|
||||
|
||||
Cache::set('headerNB', array('count' => array($nbcovie['covenants'], $nbhumain['humains'], "cette", $enligne['enligne']), 'infos' => $infos, 'messagedemarrage' => $msgdem['titre']));
|
||||
|
||||
Cache::set("headerNB", array("count" => array($nbcovie["covenants"], $nbhumain["humains"], "cette", $enligne["enligne"]), "infos" => $infos, "messagedemarrage" => $msgdem["titre"]));
|
||||
unset($nbcovie, $nbhumain, $enligne, $infos, $msgdem, $bdd);
|
||||
|
||||
$header = Cache::read('headerNB');
|
||||
|
||||
$header = Cache::read("headerNB");
|
||||
}
|
||||
$template->assign('header', $header);
|
||||
$template->assign('version', $VAR['version']);
|
||||
$template->assign('first_page', $VAR['first_page']);
|
||||
$template->assign('LANG', $LANG);
|
||||
define("VITESSE", $VAR['vitesse']);
|
||||
$template->assign("header", $header);
|
||||
$template->assign("version", $VAR["version"]);
|
||||
$template->assign("serveur_name", $VAR["serveur_name"]);
|
||||
$template->assign("first_page", $VAR["first_page"]);
|
||||
$template->assign("LANG", $LANG);
|
||||
define("VITESSE", $VAR["vitesse"]);
|
||||
|
||||
//Si l'on est pas connecté, on garde le header pour comparer lors de la connexion
|
||||
if (!empty($sess->values["connected"]))
|
||||
unset($header);
|
||||
|
||||
//Evite les attaques CSRF
|
||||
if (!empty($_SERVER['HTTP_REFERER']) && !ereg(time().'http://'.$_SERVER['HTTP_HOST'], time().$_SERVER['HTTP_REFERER']) && !defined('xCSRF'))
|
||||
//TODO remplacer les ereg par des preg !
|
||||
if (!empty($_SERVER["HTTP_REFERER"]) && !ereg(time()."http://".$_SERVER['HTTP_HOST'], time().$_SERVER["HTTP_REFERER"]) && !defined("xCSRF"))
|
||||
{
|
||||
elog("Possibilité d'attaque CSRF\n".var_export($_REQUEST,TRUE), 2);
|
||||
elog("Possibilité d'attaque CSRF\n".var_export($_REQUEST, TRUE), 2);
|
||||
unset($_POST, $_GET);
|
||||
$_GET = $_POST = array();
|
||||
}
|
||||
|
||||
function limite($txt, $limit)
|
||||
{
|
||||
if (strlen($txt) > $limit)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
?>
|
||||
?>
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
if(!defined('INDEX')) { header('Location: ../'); exit; }
|
||||
|
||||
$bdd->reconnexion();
|
||||
$flottes = $bdd->query("SELECT id FROM $table_flottes WHERE (id_user = ".$planete->id_user." OR end_planete = ".$planete->id.") AND (start_time + end_time) <= ".time()." AND last < ".(time()-10).";");
|
||||
$flottes = $bdd->query("SELECT id FROM $table_flottes WHERE (id_user = ".$planete->id_user." OR end_planete = ".$planete->id." OR id_alliance = ".$planete->id_alliance." OR end_planete = ".$planete->id_alliance.") AND (start_time + end_time) <= ".time()." AND last < ".(time()-10).";");
|
||||
$bdd->deconnexion();
|
||||
|
||||
if ($flottes) {
|
||||
|
|
|
|||
|
|
@ -1,38 +1,32 @@
|
|||
<?php
|
||||
function trouvNom($id_user)
|
||||
{
|
||||
global $table_user;
|
||||
$base = new bdd();
|
||||
$resultat = $base->unique_query("SELECT pseudo FROM $table_user WHERE id = $id_user;");
|
||||
$base->deconnexion();
|
||||
return $resultat['pseudo'];
|
||||
}
|
||||
{
|
||||
global $table_user;
|
||||
$bdd = new BDD();
|
||||
$resultat = $bdd->unique_query("SELECT pseudo FROM $table_user WHERE id = $id_user;");
|
||||
$bdd->deconnexion();
|
||||
return $resultat['pseudo'];
|
||||
}
|
||||
|
||||
function linkNom($id_user){
|
||||
function linkNom($id_user)
|
||||
{
|
||||
if (is_numeric($id_user)) $nom = trouvNom($id_user);
|
||||
else $id_user = trouvId($id_user);
|
||||
return '<a href="?p=util&i='.$id_user.'">'.$nom.'</a>';
|
||||
}
|
||||
|
||||
/*function trouvId($nom){
|
||||
function trouvInfoUser($info, $type, $donnees)
|
||||
{
|
||||
global $table_user;
|
||||
$base = new bdd();
|
||||
$base->connexion();
|
||||
$resultat = $base->unique_query("SELECT id FROM $table_user WHERE pseudo = '$nom';");
|
||||
$base->deconnexion();
|
||||
return $resultat['id'];
|
||||
}*/
|
||||
$bdd = new BDD();
|
||||
$resultat = $bdd->unique_query("SELECT ".implode(',', $donnees)." FROM $table_user WHERE $type = '$info';");
|
||||
$bdd->deconnexion();
|
||||
|
||||
/*function trouvInfo($id_user, $info){
|
||||
global $table_user;
|
||||
$base = new bdd();
|
||||
$base->connexion();
|
||||
$resultat = $base->unique_query("SELECT $info FROM $table_user WHERE id = $id_user;");
|
||||
$base->deconnexion();
|
||||
return $resultat[$info];
|
||||
}*/
|
||||
return $resultat;
|
||||
}
|
||||
|
||||
function affTemp($secondes){
|
||||
function affTemp($secondes)
|
||||
{
|
||||
$heures = intval($secondes/3600);
|
||||
$minutes = intval($secondes/60-($heures*60));
|
||||
if ($minutes < 10) $minutes = '0'.$minutes;
|
||||
|
|
@ -42,11 +36,8 @@ function affTemp($secondes){
|
|||
return $heures.':'.$minutes.':'.$seconde;
|
||||
}
|
||||
|
||||
function separerNombres($nombre) {
|
||||
return number_format($nombre, 0, ',', ' ');
|
||||
}
|
||||
|
||||
function sec($time) {
|
||||
function sec($time)
|
||||
{
|
||||
$output = '';
|
||||
$tab = array ('jour' => '86400', 'heure' => '3600', 'minute' => '60', 'seconde' => '1');
|
||||
foreach ($tab as $key => $value) {
|
||||
|
|
@ -65,161 +56,42 @@ function sec($time) {
|
|||
else return $output;
|
||||
}
|
||||
|
||||
function readDeblok($tableau, $queryPlanete){
|
||||
global $batimentVAR, $technologiesVAR, $casernenVAR, $nomterrnVAR, $nomvaisnVAR;
|
||||
if ($tableau == '0') return 'Débloqué';
|
||||
else {
|
||||
$return = '';
|
||||
foreach ($tableau as $ligne){
|
||||
if (!(array_search($ligne[1], $batimentVAR) === false)) {
|
||||
$x = array_search($ligne[1], $batimentVAR);
|
||||
$var = 'batiments';
|
||||
}
|
||||
elseif (!(array_search($ligne[1], $technologiesVAR) === false)) {
|
||||
$x = array_search($ligne[1], $technologiesVAR);
|
||||
$var = 'technologies';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $casernenVAR) === false)) {
|
||||
$x = array_search($ligne[1], $casernenVAR);
|
||||
$var = 'casernes';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $nomterrnVAR) === false)) {
|
||||
$x = array_search($ligne[1], $nomterrnVAR);
|
||||
$var = 'terrestres';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $nomvaisnVAR) === false)) {
|
||||
$x = array_search($ligne[1], $nomvaisnVAR);
|
||||
$var = 'vaisseaux';
|
||||
}
|
||||
else return '#Error';
|
||||
|
||||
if (isset($var) && $var == 'technologies') {
|
||||
if (($queryPlanete->{$var}[$x] & $ligne[2]) != $ligne[2]) $return .= '<span class="lack">'.$ligne[0].' ('.$var.')</span><br />';
|
||||
else $return .= $ligne[0].' ('.$var.')<br />';
|
||||
}
|
||||
elseif (isset($var) && $queryPlanete->{$var}[$x] < $ligne[2]) $return .= '<span class="lack">'.$ligne[0].' '.$ligne[2].' ('.$queryPlanete->{$var}[$x].') ('.$var.')</span><br />';
|
||||
elseif (isset($var) && $queryPlanete->{$var}[$x] >= $ligne[2]) $return .= $ligne[0].' '.$ligne[2].' ('.$queryPlanete->{$var}[$x].') ('.$var.')<br />';
|
||||
}
|
||||
if (empty($return)) return 'Débloqué';
|
||||
else return $return;
|
||||
}
|
||||
function txtmission($mission)
|
||||
{
|
||||
if ($mission == 0)
|
||||
return 'Stationner';
|
||||
elseif ($mission == 1)
|
||||
return 'Transporter';
|
||||
elseif ($mission == 2)
|
||||
return 'Coloniser';
|
||||
elseif ($mission == 3)
|
||||
return 'Attaquer';
|
||||
elseif ($mission == 4)
|
||||
return 'Recycler';
|
||||
elseif ($mission == 5)
|
||||
return 'Espionner';
|
||||
elseif ($mission == 6)
|
||||
return 'Retour';
|
||||
else
|
||||
return 'Erreur';
|
||||
}
|
||||
|
||||
function requestDeblok($tableau, $queryPlanete){
|
||||
global $batimentVAR, $technologiesVAR, $casernenVAR, $nomterrnVAR, $nomvaisnVAR;
|
||||
if ($tableau == '0') return true;
|
||||
else {
|
||||
$return = true;
|
||||
foreach ($tableau as $ligne){
|
||||
if (!(array_search($ligne[1], $batimentVAR) === false)) {
|
||||
$x = array_search($ligne[1], $batimentVAR);
|
||||
$var = 'batiments';
|
||||
}
|
||||
elseif (!(array_search($ligne[1], $technologiesVAR) === false)) {
|
||||
$x = array_search($ligne[1], $technologiesVAR);
|
||||
$var = 'technologies';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $casernenVAR) === false)) {
|
||||
$x = array_search($ligne[1], $casernenVAR);
|
||||
$var = 'casernes';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $nomterrnVAR) === false)) {
|
||||
$x = array_search($ligne[1], $nomterrnVAR);
|
||||
$var = 'terrestres';
|
||||
}
|
||||
elseif (!($x = array_search($ligne[1], $nomvaisnVAR) === false)) {
|
||||
$x = array_search($ligne[1], $nomvaisnVAR);
|
||||
$var = 'vaisseaux';
|
||||
}
|
||||
else return false;
|
||||
|
||||
if (isset($var) && $var == 'technologies') {
|
||||
if (($queryPlanete->{$var}[$x] & $ligne[2]) != $ligne[2]) $return = false;
|
||||
}
|
||||
elseif (isset($var) && $queryPlanete->{$var}[$x] < $ligne[2]) $return = false;
|
||||
}
|
||||
return $return;
|
||||
}
|
||||
}
|
||||
|
||||
function txtmission($mission){
|
||||
if ($mission == 0) return 'Stationner';
|
||||
elseif ($mission == 1) return 'Transporter';
|
||||
elseif ($mission == 2) return 'Coloniser';
|
||||
elseif ($mission == 3) return 'Attaquer';
|
||||
elseif ($mission == 4) return 'Recycler';
|
||||
elseif ($mission == 5) return 'Espionner';
|
||||
elseif ($mission == 6) return 'Retour';
|
||||
else return 'Erreur';
|
||||
}
|
||||
|
||||
function txtTactique($tactique){
|
||||
switch($tactique){
|
||||
case 1: return '1'; break;
|
||||
case 2: return '2'; break;
|
||||
case 3: return '3'; break;
|
||||
case 4: return '4'; break;
|
||||
case 5: return '5'; break;
|
||||
case 6: return '6'; break;
|
||||
case 7: return '7'; break;
|
||||
case 8: return '8'; break;
|
||||
case 9: return '9'; break;
|
||||
case 10: return '10'; break;
|
||||
case 11: return '11'; break;
|
||||
case 12: return '12'; break;
|
||||
case 13: return '13'; break;
|
||||
case 14: return '14'; break;
|
||||
case 15: return '15'; break;
|
||||
case 16: return '16'; break;
|
||||
case 17: return '17'; break;
|
||||
case 18: return '18'; break;
|
||||
case 19: return '19'; break;
|
||||
case 20: return '20'; break;
|
||||
case 21: return '21'; break;
|
||||
default: return 'autre'; break;
|
||||
}
|
||||
}
|
||||
|
||||
function tactique($tactique){
|
||||
switch($tactique){
|
||||
case 1: return array(1,0,12,false); break;
|
||||
case 2: return array(2,88,12,false); break;
|
||||
case 3: return array(3,75,25,false); break;
|
||||
case 4: return array(4,63,37,false); break;
|
||||
case 5: return array(5,50,50,false); break;
|
||||
case 6: return array(6,37,63,false); break;
|
||||
case 7: return array(7,25,75,false); break;
|
||||
case 8: return array(8,12,88,false); break;
|
||||
case 9: return array(9,12,88,true); break;
|
||||
case 10: return array(10,25,75,true); break;
|
||||
case 11: return array(11,37,63,true); break;
|
||||
case 12: return array(12,50,50,true); break;
|
||||
case 13: return array(13,63,37,true); break;
|
||||
case 14: return array(14,75,25,true); break;
|
||||
case 15: return array(15,75,26,true); break;
|
||||
case 16: return array(16,75,27,true); break;
|
||||
case 17: return array(17,75,28,true); break;
|
||||
case 18: return array(18,75,29,true); break;
|
||||
case 19: return array(19,75,30,true); break;
|
||||
case 20: return array(20,75,31,true); break;
|
||||
case 21: return array(21,75,32,true); break;
|
||||
default: return array(1,0,10,false); break;
|
||||
}
|
||||
}
|
||||
|
||||
function pillage($metal, $cristal, $hydrogene, $vfm){
|
||||
function pillage($metal, $cristal, $hydrogene, $vfm)
|
||||
{
|
||||
$Qm = $metal / $vfm;
|
||||
$Qc = $cristal / $vfm;
|
||||
$Qh = $hydrogene / $vfm;
|
||||
|
||||
$somme = $Qm + $Qc + $Qh;
|
||||
|
||||
if ($somme < 2) {
|
||||
if ($somme < 2)
|
||||
{
|
||||
$Fm = $metal / 2;
|
||||
$Fc = $cristal / 2;
|
||||
$Fh = $hydrogene / 2;
|
||||
}
|
||||
else {
|
||||
else
|
||||
{
|
||||
$Fm = $Qm / $somme * $vfm;
|
||||
$Fc = $Qc / $somme * $vfm;
|
||||
$Fh = $Qh / $somme * $vfm;
|
||||
|
|
@ -228,48 +100,23 @@ function pillage($metal, $cristal, $hydrogene, $vfm){
|
|||
return array(floor($Fm), floor($Fc), floor($Fh));
|
||||
}
|
||||
|
||||
function vais_tempsDeplacement($start_galaxie,$start_ss,$start_position,$end_galaxie,$end_ss,$end_position,$vitesse,$coefvitesse = 1,$preparation = 0,$chauffe = 0) {
|
||||
if ($end_galaxie-$start_galaxie == 0 && $end_ss-$start_ss == 0 && $end_position-$start_position == 0) $temps = 0;
|
||||
elseif ($end_galaxie-$start_galaxie == 0 && $end_ss-$start_ss == 0 && $chauffe == 0) $temps = $preparation+abs($end_position-$start_position)*$vitesse/12;
|
||||
elseif ($end_galaxie-$start_galaxie == 0 && $chauffe == 0) $temps = $preparation+abs($end_ss-$start_ss)*$vitesse;
|
||||
elseif ($chauffe == 0) $temps = $preparation+abs($end_galaxie-$start_galaxie)*$vitesse*300;
|
||||
elseif ($end_galaxie-$start_galaxie == 0 && $end_ss-$start_ss == 0) $temps = $preparation+abs($end_position-$start_position)*($vitesse*2)/12+$preparation;
|
||||
/*elseif ($end_galaxie-$start_galaxie == 0 && $end_ss-$start_ss <= $chauffe) $temps = abs($end_ss-$start_ss)*(($vitesse/$chauffe)*($chauffe-abs($end_ss-$start_ss))+$vitesse)+$preparation;
|
||||
elseif ($end_galaxie-$start_galaxie == 0) $temps = $vitesse*abs($end_ss-$start_ss)+$vitesse*10+$preparation;*/
|
||||
elseif ($end_galaxie-$start_galaxie == 0) $temps = (abs($end_ss-$start_ss)*(($vitesse/$chauffe)*((abs($chauffe-abs($end_ss-$start_ss))+($chauffe-abs($end_ss-$start_ss)))/2)+$vitesse))+(20-(abs($chauffe-abs($end_ss-$start_ss))+($chauffe-abs($end_ss-$start_ss)))/2)*54+$preparation;
|
||||
else $temps = (($vitesse/$chauffe)*($chauffe-abs($end_galaxie-$start_galaxie))+$vitesse)*300+108+$preparation;
|
||||
|
||||
return $temps/$coefvitesse;
|
||||
}
|
||||
|
||||
function vaisTempsdeplacement($start_amas, $start_ss, $start_pos, $end_amas,$end_ss, $end_pos, $vitessevaisseaux, $vitesseflotte=100) {
|
||||
if($end_amas - $start_amas != 0) return (10+(35000/$vitesseFlotte*sqrt(abs($end_amas-$start_amas)*20000000/$vitesseVaisseaux)));
|
||||
elseif($end_ss-$start_ss != 0) return (10+(35000/$vitesseFlotte*sqrt(2700000+abs($end_ss-$start_ss)*95000/$vitessevais)));
|
||||
elseif($end_pos-$start_pos != 0) return (10+(35000/$vitesseFlotte*sqrt((abs($end_pos-$start_pos)*5000/$vitessevais))));
|
||||
else return (10+(35000/$vitesseFlotte-sqrt(5000/$vitesseVais)));
|
||||
}
|
||||
|
||||
|
||||
function vais_conso($tempsDeplacement,$nbvais = 1){
|
||||
return intval($tempsDeplacement*$nbvais/20);
|
||||
}
|
||||
|
||||
function send_mail($admail, $sujet, $corps){
|
||||
require_once(_FCORE."../game/Class/class.phpmailer.php");
|
||||
function send_mail($admail, $sujet, $corps)
|
||||
{
|
||||
require_once("Class/phpmailer.php");
|
||||
|
||||
$mail = new PHPmailer();
|
||||
$mail->SetLanguage('fr', _FCORE."../game/Class/");
|
||||
$mail->SetLanguage('fr', ONYX."/include/Class/");
|
||||
$mail->IsSMTP();
|
||||
$mail->IsHTML(true);
|
||||
$mail->Host='s-fr.com';
|
||||
$mail->From='no-reply@halo-battle.s-fr.com';
|
||||
$mail->CharSet = "utf-8";
|
||||
$mail->Host='mail2.power-heberg.net';
|
||||
$mail->From='no-reply@anomaly-concepts.com';
|
||||
$mail->FromName='Halo-Battle';
|
||||
$mail->SMTPAuth=true;
|
||||
$mail->Username='no-reply@halo-battle.s-fr.com';
|
||||
$mail->Password='hD3e2nXu';
|
||||
$mail->Username='no-reply@anomaly-concepts.com';
|
||||
$mail->Password='balamb468';
|
||||
|
||||
$mail->AddAddress($admail);
|
||||
$mail->AddReplyTo('no-reply@halo-battle.s-fr.com');
|
||||
$mail->AddReplyTo('nemunaire@anomaly-concepts.com');
|
||||
$mail->Subject = $sujet;
|
||||
$mail->Body = $corps;
|
||||
|
||||
|
|
@ -279,22 +126,23 @@ function send_mail($admail, $sujet, $corps){
|
|||
return $return;
|
||||
}
|
||||
|
||||
function send_mailHTML($admail, $sujet, $corps){
|
||||
require_once(_FCORE."../game/Class/class.phpmailer.php");
|
||||
function send_mailHTML($admail, $sujet, $corps)
|
||||
{
|
||||
require_once("Class/phpmailer.php");
|
||||
|
||||
$mail = new PHPmailer();
|
||||
$mail->SetLanguage('fr', _FCORE."../game/Class/");
|
||||
$mail->SetLanguage('fr', ONYX."/include/Class/");
|
||||
$mail->IsSMTP();
|
||||
$mail->IsHTML(true);
|
||||
$mail->Host='s-fr.com';
|
||||
$mail->From='no-reply@halo-battle.s-fr.com';
|
||||
$mail->Host='mail2.power-heberg.net';
|
||||
$mail->From='no-reply@anomaly-concepts.com';
|
||||
$mail->FromName='Halo-Battle';
|
||||
$mail->SMTPAuth=true;
|
||||
$mail->Username='no-reply@halo-battle.s-fr.com';
|
||||
$mail->Password='hD3e2nXu';
|
||||
$mail->Username='no-reply@anomaly-concepts.com';
|
||||
$mail->Password='balamb468';
|
||||
|
||||
$mail->AddAddress($admail);
|
||||
$mail->AddReplyTo('no-reply@halo-battle.s-fr.com');
|
||||
$mail->AddReplyTo('nemunaire@anomaly-concepts.com');
|
||||
$mail->Subject = 'Halo-Battle :: '.$sujet;
|
||||
$mail->Body = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><title>Halo-Battle :: '.$sujet.'</title></head><body><p>'.$corps.'<br /><br />A bientôt dans Halo-Battle,<br />Le staff</p></body></html>';
|
||||
|
||||
|
|
@ -304,49 +152,155 @@ function send_mailHTML($admail, $sujet, $corps){
|
|||
return $return;
|
||||
}
|
||||
|
||||
function erreur($message, $color = "red", $lien = "", $temps = 2500){
|
||||
global $template, $page;
|
||||
function erreur($message, $color = "red", $lien = "", $temps = 2500)
|
||||
{
|
||||
global $template, $page, $SESS;
|
||||
|
||||
if (!empty($page))
|
||||
$template->assign('page', $page);
|
||||
|
||||
$template->assign('message', $message);
|
||||
//if (!empty($lien)) $template->assign('script','<script type="text/javascript">setTimeout(\'document.location.href="'.$lien.'";\', '.$temps.');</script>');
|
||||
$template->assign('couleur',$color);
|
||||
$template->display('game/erreur.tpl');
|
||||
|
||||
if (!empty($lien))
|
||||
$template->assign('scripth','<meta http-equiv="refresh" content="'.($temps/1000).'; url='.$lien.'" />');
|
||||
|
||||
//Si le joueur est connecté, on affiche la page d'erreur du jeu, sinon on afficher la page du cms
|
||||
if (isset($SESS->values['connected']) && $SESS->values['connected'])
|
||||
$template->display('game/erreur.tpl');
|
||||
else
|
||||
$template->display('cms/erreur.tpl');
|
||||
exit;
|
||||
}
|
||||
|
||||
function send_mp($joueur, $titre, $message, $type = 0, $emetteur = 0){
|
||||
global $table_mail, $bdd;
|
||||
function send_mp($joueur, $titre, $message, $type = 0, $emetteur = 0)
|
||||
{
|
||||
global $table_mail, $bdd, $VAR;
|
||||
$temps = time();
|
||||
if (!is_numeric($joueur)) $joueur = trouvId($joueur);
|
||||
if (!is_numeric($emetteur)) $emetteur = trouvId($emetteur);
|
||||
if (!empty($joueur)) {
|
||||
$bdd->connexion();
|
||||
$mail = false;
|
||||
if (!is_numeric($joueur))
|
||||
{
|
||||
$joueur = trouvInfoUser($joueur, "pseudo", array("id", "mail", "envoyerMail"));
|
||||
if (($emetteur == 0 && $joueur["envoyerMail"]& 1) || ($emetteur != 0 && $joueur["envoyerMail"]& 2))
|
||||
$mail = $joueur["mail"];
|
||||
else
|
||||
$mail = false;
|
||||
|
||||
$joueur = $joueur["id"];
|
||||
}
|
||||
else
|
||||
{
|
||||
$joueur = trouvInfoUser($joueur, "id", array("id", "mail", "envoyerMail"));
|
||||
if (($emetteur == 0 && $joueur["envoyerMail"]& 1) || ($emetteur != 0 && $joueur["envoyerMail"]& 2))
|
||||
$mail = $joueur["mail"];
|
||||
else
|
||||
$mail = false;
|
||||
|
||||
$joueur = $joueur["id"];
|
||||
}
|
||||
if (!is_numeric($emetteur))
|
||||
{
|
||||
$emetteur = trouvInfoUser($emetteur, "pseudo", array("id"));
|
||||
$emetteur = $emetteur['id'];
|
||||
}
|
||||
if (!empty($joueur))
|
||||
{
|
||||
$bdd->reconnexion();
|
||||
$bdd->escape($joueur);
|
||||
$bdd->escape($titre);
|
||||
$bdd->escape($message);
|
||||
$bdd->query("INSERT INTO $table_mail (destinataire, expediteur, type, sujet, contenu, temps) VALUES($joueur, $emetteur, $type, '$titre', '$message', '$temps');");
|
||||
$bdd->query("INSERT INTO $table_mail (destinataire, expediteur, type, sujet, contenu, temps) VALUES($joueur, $emetteur, $type, '$titre', '$message', $temps);");
|
||||
$bdd->deconnexion();
|
||||
|
||||
if ($mail)
|
||||
send_mail($mail, "Halo-Battle :: Nouveau message privé", 'Bonjour,\n\nVous recevez ce courriel suite à l\'arrivée d\'un nouveau message privé reçu sur votre compte de jeu du serveur '.$VAR['serveur_name'].'. Le sujet de ce message est : "'.$titre.'". Vous pouvez utiliser le lien suivant pour voir le message ou vous connecter.\n\nhttp://'.$_SERVER['HTTP_HOST'].'/'.$VAR['first_page'].'?p=messagerie\n\nVous pouvez désactiver ses notifications via les options de votre compte dans l\'onglet "notifications"\n\nA bientôt dans Halo-Battle,\nLe Staff');
|
||||
}
|
||||
}
|
||||
|
||||
function nameLink($id, $type){
|
||||
global $race;
|
||||
require(_FCORE."../game/noms.php");
|
||||
function gen_mdp($nbchar)
|
||||
{
|
||||
$liste = "abcdefghijklmnopqrstuvwxyz123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
|
||||
$code = "";
|
||||
for($i = 0; $i < $nbchar; $i++)
|
||||
{
|
||||
$code .= $liste[rand(0,60)];
|
||||
}
|
||||
|
||||
if ($type == "technologie") return '<a href="?p=description&t=1">'.$technolo[$id].'</a>';
|
||||
return $code;
|
||||
}
|
||||
|
||||
function mdp($nom, $mdp, $alea = false){
|
||||
if (empty($alea)) {
|
||||
$alea = random(1024);
|
||||
function check_mdp($mdp, $pseudo = null, $conf=null)
|
||||
{
|
||||
if (isset($conf) && $conf !== $mdp)
|
||||
return "Le mot de passe et sa confirmation sont différent";
|
||||
elseif (strlen($mdp) < 7)
|
||||
return "Mot de passe trop court, il doit faire au moins 7 caractères.";
|
||||
elseif (ctype_digit($mdp))
|
||||
return "Le mot de passe ne doit pas contenir que des chiffres";
|
||||
elseif (!empty($pseudo) && ereg($mdp, $pseudo))
|
||||
return "Votre mot de passe ne doit pas être une partie de votre nom d'utilisateur";
|
||||
elseif (!empty($pseudo) && ereg($pseudo, $mdp))
|
||||
return "Votre nom d'utilisateur ne doit pas être une partie de votre mot de passe";
|
||||
elseif (ereg("halo", $mdp))
|
||||
return "Le mot de passe ne peut pas contenir le mot halo !";
|
||||
elseif (preg_match("#azer|qwer|zert|wert|erty|rtyu|tyui|yuio|uiop|poiu|oiuy|iuyt|uytr|ytre|trez|trew|reza|rewq|qsdf|asdf|sdfg|dfgh|fghj|ghjk|hjkl|jklm|mlkj|lkjh|kjhg|jhgf|hgfd|gfds|fdsq|fdsa|wxcv|vcxw|xcvb|bvcx|cvbn|nbvc|vbnm|mnbv|123|234|345|456|567|678|789|987|876|765|654|543|432|321|210|012#iU", $mdp, $osef))
|
||||
return "Ayez plus de créativité pour définir votre mot de passe, les lettres ou chiffres du clavier qui se suivent ne sont pas une bonne sécurité !";
|
||||
else
|
||||
return $mdp;
|
||||
}
|
||||
|
||||
function mdp($nom, $mdp, $alea = null)
|
||||
{
|
||||
if (empty($alea))
|
||||
{
|
||||
$alea = substr(random(1024), 0, 255);
|
||||
return array(hash('whirlpool', cxor(strtoupper($nom).':'.$mdp.'♂♪',$alea)), $alea);
|
||||
}
|
||||
else return hash('whirlpool', cxor(strtoupper($nom).':'.$mdp.'♂♪',$alea));
|
||||
else
|
||||
return hash('whirlpool', cxor(strtoupper($nom).':'.$mdp.'♂♪',$alea));
|
||||
}
|
||||
|
||||
function redirection($url){
|
||||
function redirection($url)
|
||||
{
|
||||
header('Location: '.$url);
|
||||
print '<meta http-equiv="refresh" content="0; url='.$url.'" />';
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
|
||||
function slots($id_user)
|
||||
{
|
||||
global $table_flottes, $table_planete;
|
||||
|
||||
$bdd = new BDD();
|
||||
$flottes = $bdd->unique_query("SELECT COUNT(id) AS cnt FROM $table_flottes WHERE id_user = $id_user;");
|
||||
$colonies = $bdd->unique_query("SELECT COUNT(id) AS cnt FROM $table_planete WHERE id_user = $id_user;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
return (ceil(count($colonies["cnt"])/2 + 1) - $flottes["cnt"]);
|
||||
}
|
||||
|
||||
function limite($txt, $limit)
|
||||
{
|
||||
if (strlen($txt) > $limit)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
function bourse_calcPrixBase($dispo, $nb = 1000, $rate = 2)
|
||||
{
|
||||
if ($nb > 1000)
|
||||
{
|
||||
$prix = 0;
|
||||
for($i = 0; $i < $nb; $i+=1000)
|
||||
{
|
||||
$prix += bourse_calcPrixBase($dispo-$i, 1000, $rate);
|
||||
}
|
||||
$prix += bourse_calcPrixBase($dispo-$i, $dispo%1000, $rate);
|
||||
return $prix;
|
||||
}
|
||||
else
|
||||
return ceil(pow($dispo, -0.1) * $nb * $rate);
|
||||
//return pow($dispo, -0.1) * 200; //Prix de base ...
|
||||
}
|
||||
?>
|
||||
|
|
@ -17,6 +17,7 @@ class Alliance extends Surface{
|
|||
$tag,
|
||||
$galaxie,
|
||||
$ss,
|
||||
$wing,
|
||||
$nom_asteroide,
|
||||
$image_asteroide,
|
||||
$debris_met,
|
||||
|
|
@ -51,6 +52,7 @@ class Alliance extends Surface{
|
|||
$this->tag = $alli["tag"];
|
||||
$this->galaxie = $alli["galaxie"];
|
||||
$this->ss = $alli["ss"];
|
||||
$this->wing = $alli["wing"];
|
||||
$this->nom_asteroide = $alli["nom_asteroide"];
|
||||
$this->image_asteroide = $alli["image_asteroide"];
|
||||
$this->debris_met = $alli["debris_met"];
|
||||
|
|
|
|||
|
|
@ -15,9 +15,15 @@ class Asteroide extends Surface
|
|||
$sante,
|
||||
$nom_alliance,
|
||||
$tag,
|
||||
$wing,
|
||||
$nom_asteroide,
|
||||
$image_asteroide,
|
||||
$credits_alliance;
|
||||
$position = 5,
|
||||
$cap = 123456789,
|
||||
$credits_alliance,
|
||||
$url_chat,
|
||||
$url_forum,
|
||||
$details = array();
|
||||
|
||||
/**
|
||||
* Constructeur
|
||||
|
|
@ -53,12 +59,20 @@ class Asteroide extends Surface
|
|||
parent::User($SESS->values['id']); //On utilise le numéro d'utilisateur enregistré en session
|
||||
$this->galaxie = $plan["galaxie"];
|
||||
$this->ss = $plan["ss"];
|
||||
$this->nom_asteroide = $plan["nom_asteroide"];
|
||||
$this->image = $this->image_asteroide = $plan["image_asteroide"];
|
||||
$this->debris_met = $plan["debris_met"];
|
||||
$this->debris_cri = $plan["debris_cri"];
|
||||
$this->metal = $plan["metal"];
|
||||
$this->cristal = $plan["cristal"];
|
||||
$this->hydrogene = $plan["hydrogene"];
|
||||
$this->credits_alliance = $plan["credits_alliance"];
|
||||
$this->fondateur = $plan["fondateur"];
|
||||
$this->nom_alliance = $plan["nom_alliance"];
|
||||
$this->wing = $plan["wing"];
|
||||
$this->tag = $plan["tag"];
|
||||
$this->url_forum = $plan["url_forum"];
|
||||
$this->url_chat = $plan["url_chat"];
|
||||
|
||||
foreach($alli_batimentVAR as $bat)
|
||||
$this->batiments[] = $plan[$bat];
|
||||
|
|
@ -78,419 +92,107 @@ class Asteroide extends Surface
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Actualise les ressources de la planète en fonction de la production et termine les files d'attentes.
|
||||
*
|
||||
* @return void
|
||||
* @access public
|
||||
*/
|
||||
function loadDetails()
|
||||
{
|
||||
global $table_alliances;
|
||||
$bdd = new bdd();
|
||||
$this->details = $bdd->unique_query("SELECT presentation, message_inscription, texte_interne, port_chat, chan_chat, image, etat_inscription, defcon, defcon_txt FROM $table_alliances WHERE id = ".$this->id.";");
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
|
||||
function actualiser($actuFile = true, $first = false)
|
||||
{
|
||||
//Actualisation des files d'attentes
|
||||
if ($actuFile)
|
||||
{
|
||||
$this->file_ready("batiments");
|
||||
$this->file_readyTechno("technologies");
|
||||
$this->file_ready("casernes");
|
||||
$this->file_ready("terrestres");
|
||||
$this->file_ready("vaisseaux");
|
||||
}
|
||||
|
||||
//Calcul de la capacité de stockage maximale
|
||||
if (!empty($timestamp_lastSilo))
|
||||
{
|
||||
$this->cap = pow(2, $this->batiments[10]-1) * 100000;
|
||||
$capnouv = pow(2, $this->batiments[10]) * 100000;
|
||||
}
|
||||
else
|
||||
$this->cap = pow(2, $this->batiments[10]) * 100000;
|
||||
|
||||
//Calcul du temps écoulé depuis la dernière mise à jour de la planète
|
||||
$temps_ecoule = time() - $this->timestamp;
|
||||
$ressources = $this->production($temps_ecoule);
|
||||
if ($this->metal + $ressources[0] < $this->cap)
|
||||
$this->metal += $ressources[0];
|
||||
else
|
||||
{
|
||||
//Si les capacité de stockage ont changé depuis la dernière actualisation
|
||||
if (isset($capnouv))
|
||||
{
|
||||
$ressources = $this->production(time() - $this->timestamp_lastSilo);
|
||||
if ($this->metal + $ressources[0] < $capnouv)
|
||||
$this->metal += $ressources[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->alert_ressources[0] = true;
|
||||
$this->metal = $this->cap;
|
||||
}
|
||||
}
|
||||
if ($this->cristal + $ressources[1] < $this->cap)
|
||||
$this->cristal += $ressources[1];
|
||||
else
|
||||
{
|
||||
//Si les capacité de stockage ont changé depuis la dernière actualisation
|
||||
if (isset($capnouv))
|
||||
{
|
||||
$ressources = $this->production(time() - $this->timestamp_lastSilo);
|
||||
if ($this->cristal + $ressources[1] < $capnouv)
|
||||
$this->cristal += $ressources[1];
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->alert_ressources[1] = true;
|
||||
$this->cristal = $this->cap;
|
||||
}
|
||||
}
|
||||
if ($this->hydrogene + $ressources[2] < $this->cap)
|
||||
$this->hydrogene += $ressources[2];
|
||||
else
|
||||
{
|
||||
//Si les capacité de stockage ont changé depuis la dernière actualisation
|
||||
if (isset($capnouv))
|
||||
{
|
||||
$ressources = $this->production(time() - $this->timestamp_lastSilo);
|
||||
if ($this->hydrogene + $ressources[2] < $capnouv)
|
||||
$this->hydrogene += $ressources[2];
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->alert_ressources[2] = true;
|
||||
$this->hydrogene = $this->cap;
|
||||
}
|
||||
}
|
||||
|
||||
//Vérification de la date pour faire les actions journalières
|
||||
if (date('zya') != date('zya', $this->timestamp))
|
||||
{
|
||||
//On évalue le moral
|
||||
$this->evalMoral($first);
|
||||
|
||||
//Si la population est à 0, on ajoute des habitants
|
||||
if ($this->population <= 0)
|
||||
$this->population = 1000;
|
||||
|
||||
$popPlus = $this->population * 0.0153^max(1, floor((time()-$this->timestamp)/86400));
|
||||
|
||||
if ($this->politique == 2)
|
||||
$popPlus *= 1.1; //Communisme : 10 % de population qui arrive en plus.
|
||||
elseif ($this->politique == 3)
|
||||
$popPlus *= 1.05; //Démocratie : 5 % de population qui arrive en plus.
|
||||
|
||||
if ($this->technologies[2] & 4)
|
||||
$popPlus *= 1.15;
|
||||
elseif ($this->technologies[2] & 2)
|
||||
$popPlus *= 1.10;
|
||||
elseif ($this->technologies[2] & 1)
|
||||
$popPlus *= 1.05;
|
||||
|
||||
$this->population += $popPlus;
|
||||
$this->credits += $this->population/100*exp(0.01)*25;
|
||||
$this->modif[] = 'population';
|
||||
}
|
||||
|
||||
$this->timestamp = time();
|
||||
|
||||
|
||||
//Calcul du nombre de cases restantes
|
||||
$this->casesRest = $this->cases;
|
||||
foreach($this->batiments as $bat)
|
||||
$this->casesRest -= $bat;
|
||||
}
|
||||
|
||||
function setMoral($difference)
|
||||
{
|
||||
$this->moral += $difference;
|
||||
|
||||
//Ajustement du moral
|
||||
if ($this->moral > 1)
|
||||
$this->moral = 1;
|
||||
elseif ($this->moral < 0)
|
||||
$this->moral = 0;
|
||||
|
||||
if (!in_array("moral", $this->modif))
|
||||
$this->modif[] = "moral";
|
||||
}
|
||||
|
||||
function evalMoral($first = false)
|
||||
{
|
||||
//Cas de sous-production
|
||||
if (($this->coeff_bat[0] + $this->coeff_bat[1] + $this->coeff_bat[2])/3 < 0.9)
|
||||
{
|
||||
if ($this->politique == 2)
|
||||
$this->moral -= 0.10; //Communisme : démoralise 2x plus
|
||||
else
|
||||
$this->moral -= 0.05;
|
||||
if (!in_array('moral', $this->modif))
|
||||
$this->modif[] = 'moral';
|
||||
}
|
||||
|
||||
//Surpopulation
|
||||
|
||||
//Surlogement
|
||||
|
||||
//Ajustement du moral en fonction de la politique
|
||||
if ($this->politique == 1 && $this->moral > 0.7)
|
||||
$this->moral = 0.7;
|
||||
|
||||
//On vérifie qu'on ne dépasse pas le maximum
|
||||
if ($this->moral > 1)
|
||||
$this->moral = 1;
|
||||
if ($this->moral < 0)
|
||||
$this->moral = 0;
|
||||
|
||||
//Isolement si besoin
|
||||
if ($this->moral < 0.1)
|
||||
{
|
||||
//On vérifie qu'il ne s'agit pas de la planète mère
|
||||
global $bdd, $table_planete;
|
||||
$bdd->connexion();
|
||||
$res = $bdd->unique_query("SELECT id FROM $table_planete WHERE id_user = ".$this->id_user." ORDER BY id LIMIT 1;");
|
||||
$bdd->deconnexion();
|
||||
if ($res['id'] != $this->id)
|
||||
{
|
||||
if ($this->moral <= 0.01 || $this->moral <= 0.04)
|
||||
{
|
||||
if ($this->moral <= 0.01)
|
||||
$rand = rand(0,4);
|
||||
else
|
||||
$rand = rand(0,20);
|
||||
//Perte de la planète
|
||||
if ($rand == 1)
|
||||
{
|
||||
$bdd->connexion();
|
||||
$bdd->query("DELETE FROM $table_planete WHERE id = ".$this->id.";");
|
||||
$bdd->deconnexion();
|
||||
send_mp($this->id_user, 'Perte de contrôle de '.$this->nom_planete, "Suite à une démoralisation percistante de la population sur la planète ".$this->nom_planete." [".$this->galaxie.":".$this->ss.":".$this->position."], la population a renversé votre gouvernement en tuant tous vos gouverneurs. Vous perdez donc définitivement le contrôle de cette planète.");
|
||||
if (!$first)
|
||||
{
|
||||
$SESS->values['idPlan'] = $res['id'];
|
||||
erreur('La population de cette planète est tellement démoralisée qu\'elle s\'est révolté contre vous. Vous ne contrôlez plus cette planète.');
|
||||
}
|
||||
}
|
||||
}
|
||||
elseif ($this->moral <= 0.06 || $this->moral <= 0.1)
|
||||
{
|
||||
if ($this->moral <= 0.06)
|
||||
$rand = rand(0,2);
|
||||
else
|
||||
$rand = rand(0,10);
|
||||
//Perte de contrôle temporaire
|
||||
if ($rand == 1)
|
||||
{
|
||||
$debut = time() - rand(0, 3600)*4;
|
||||
$fin = $debut + 86400;
|
||||
$this->isolement = array($debut, $fin);
|
||||
if (!in_array('isolement', $this->modif)) $this->modif[] = 'isolement';
|
||||
|
||||
send_mp($this->id_user, 'Perte de contrôle temporaire de '.$this->nom_planete, "Suite à une démoralisation percistante de la population sur la planète ".$this->nom_planete." [".$this->galaxie.":".$this->ss.":".$this->position."], la population a pris le contrôle de votre planète. Vous perdez le contrôle de cette planète le temps que vos gouverneurs reprennent le pouvoir.");
|
||||
if (!$first)
|
||||
{
|
||||
$SESS->values['idPlan'] = $res['id'];
|
||||
erreur('La population de cette planète est tellement démoralisée qu\'elle s\'est révoltée contre vous. Vous perdez temporairement le contrôle de cette planète.');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$this->file_bat->batiment_ready($this);
|
||||
$this->file_vais->vaisseaux_ready($this);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Vérifie si la planète est isolée ou non
|
||||
*
|
||||
* @return boolean
|
||||
* @access public
|
||||
*/
|
||||
function isolement()
|
||||
function checkAndRetireRessources($metal, $cristal, $hydrogene, $credits)
|
||||
{
|
||||
return false;
|
||||
if ($this->metal >= $metal && $this->cristal >= $cristal && $this->hydrogene >= $hydrogene && $this->credits_alliance >= $credits)
|
||||
{
|
||||
$this->metal -= $metal;
|
||||
$this->cristal -= $cristal;
|
||||
$this->hydrogene -= $hydrogene;
|
||||
$this->credits -= $credits;
|
||||
|
||||
$this->addModif("force");
|
||||
$this->addModif("credits_alliance");
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Calcul les ressources produites en fonction de $temps_ecoule
|
||||
* @param int $temps_ecoule Temps écoulé depuis la dernière actualisation
|
||||
*
|
||||
* @return array
|
||||
* @access public
|
||||
*/
|
||||
function production($temps_ecoule, $retarray = false)
|
||||
function addRessources($metal, $cristal, $hydrogene, $credits)
|
||||
{
|
||||
//Accélération de la production
|
||||
$temps_ecoule *= VITESSE;
|
||||
$perte = 0;
|
||||
|
||||
//Calcul de la consomation d'énergie
|
||||
if ($this->batiments[0] > 0)
|
||||
$energie_m = ceil(exp(0.28*$this->batiments[0])*10);
|
||||
else
|
||||
$energie_m = 0;
|
||||
if ($this->batiments[1] > 0)
|
||||
$energie_c = ceil(exp(0.28*$this->batiments[1])*10);
|
||||
else
|
||||
$energie_c = 0;
|
||||
if ($this->batiments[2] > 0)
|
||||
$energie_h = ceil(exp(0.2849*$this->batiments[2])*13);
|
||||
else
|
||||
$energie_h = 0;
|
||||
if ($this->batiments[3] > 0)
|
||||
$energie_s = ceil(exp(0.28*$this->batiments[3])*22);
|
||||
else
|
||||
$energie_s = 0;
|
||||
if ($this->batiments[4] > 0)
|
||||
$energie_f = ceil(exp(0.297*$this->batiments[4])*25);
|
||||
else
|
||||
$energie_f = 0;
|
||||
|
||||
//Calcul de la consomation d'énergie
|
||||
$this->energieConso = $energie_m * $this->coeff_bat[0] + $energie_c * $this->coeff_bat[1] + $energie_h * $this->coeff_bat[2];
|
||||
$nrjmx = $energie_m + $energie_c + $energie_h;
|
||||
|
||||
//Calcul de la production d'énergie
|
||||
$this->energie = $energie_s * $this->coeff_bat[3] + $energie_f * $this->coeff_bat[4];
|
||||
|
||||
if ($this->energieConso == 0)
|
||||
$coeff = 0;
|
||||
else
|
||||
$coeff = $this->energie / $this->energieConso;
|
||||
|
||||
if ($coeff < 0)
|
||||
$coeff = 0;
|
||||
elseif ($coeff > 1)
|
||||
$coeff = 1;
|
||||
|
||||
$Ncoeff = array();
|
||||
for($i = 0; $i < 3; $i++)
|
||||
$this->metal += $metal;
|
||||
if ($this->metal > $this->cap)
|
||||
{
|
||||
$Ncoeff[$i] = $coeff * $this->coeff_bat[$i];
|
||||
if ($Ncoeff[$i] > 1)
|
||||
$Ncoeff[$i] = 1;
|
||||
if ($Ncoeff[$i] < $this->coeff_bat[$i] && $this->batiments[$i] != 0)
|
||||
{
|
||||
$this->coeff_bat[$i] = $Ncoeff[$i];
|
||||
if (!in_array('coeff_bat', $this->modif))
|
||||
$this->modif[] = 'coeff_bat';
|
||||
}
|
||||
$perte += $this->metal - $this->cap;
|
||||
$this->metal = $this->cap;
|
||||
}
|
||||
|
||||
//Calcul de la consomation d'hydrogène
|
||||
if ($this->batiments[4] > 0)
|
||||
$conso_h = ((ceil(pow(1.34,($this->batiments[4]-1))*9)/3600)*$temps_ecoule) * $this->coeff_bat[4];
|
||||
else
|
||||
$conso_h = 0;
|
||||
|
||||
//Calcul des production de ressources
|
||||
if ($this->batiments[0] <= 0 || $this->batiments[3] <= 0)
|
||||
$prod_met = 0.011 * $temps_ecoule;
|
||||
else
|
||||
$prod_met = ((ceil(pow(1.1, $this->batiments[0]) * 35 * $this->batiments[0]) / 3600) * $temps_ecoule) * $this->coeff_bat[0] * 1.5;
|
||||
|
||||
if ($this->batiments[1] <= 0 || $this->batiments[3] <= 0)
|
||||
$prod_cri = 0.0055 * $temps_ecoule;
|
||||
else
|
||||
$prod_cri = ((ceil(pow(1.1, $this->batiments[1]) * 23 * $this->batiments[1]) / 3600) * $temps_ecoule) * $this->coeff_bat[1] * 1.5;
|
||||
|
||||
if ($this->batiments[2] <= 0)
|
||||
$prod_hy = 0;
|
||||
else
|
||||
$prod_hy = ((ceil(pow(1.1, $this->batiments[2]) * 14 * ($this->batiments[2] + 0.7)) / 3600) * $temps_ecoule) * $this->coeff_bat[2] * 1.5;
|
||||
|
||||
//Augmentation de la production en fonction des technologies
|
||||
if ($this->technologies[0] &4)
|
||||
$this->cristal += $cristal;
|
||||
if ($this->cristal > $this->cap)
|
||||
{
|
||||
$prod_met *= 1.15;
|
||||
$prod_cri *= 1.15;
|
||||
$prod_hy *= 1.15;
|
||||
}
|
||||
elseif ($this->technologies[0] &2)
|
||||
{
|
||||
$prod_met *= 1.10;
|
||||
$prod_cri *= 1.10;
|
||||
$prod_hy *= 1.10;
|
||||
}
|
||||
elseif ($this->technologies[0] &1)
|
||||
{
|
||||
$prod_met *= 1.05;
|
||||
$prod_cri *= 1.05;
|
||||
$prod_hy *= 1.05;
|
||||
$perte += $this->cristal - $this->cap;
|
||||
$this->cristal = $this->cap;
|
||||
}
|
||||
|
||||
//Augmentation de la production en fonction du moral
|
||||
if ($this->moral > 0.9)
|
||||
$this->hydrogene += $hydrogene;
|
||||
if ($this->hydrogene > $this->cap)
|
||||
{
|
||||
$prod_met *= 1.05;
|
||||
$prod_cri *= 1.05;
|
||||
$prod_hy *= 1.05;
|
||||
}
|
||||
elseif ($this->moral > 0.75)
|
||||
{
|
||||
$prod_met *= 1.02;
|
||||
$prod_cri *= 1.02;
|
||||
$prod_hy *= 1.02;
|
||||
}
|
||||
elseif ($this->moral < 0.45)
|
||||
{
|
||||
$prod_met *= 0.97;
|
||||
$prod_cri *= 0.97;
|
||||
$prod_hy *= 0.97;
|
||||
}
|
||||
elseif ($this->moral < 0.25)
|
||||
{
|
||||
$prod_met *= 0.94;
|
||||
$prod_cri *= 0.94;
|
||||
$prod_hy *= 0.94;
|
||||
$perte += $this->hydrogene - $this->cap;
|
||||
$this->hydrogene = $this->cap;
|
||||
}
|
||||
|
||||
//Augmentation de la production en fonction de la politique
|
||||
if ($this->politique == 2)
|
||||
{
|
||||
$prod_met *= 1.10;
|
||||
$prod_cri *= 1.10;
|
||||
$prod_hy *= 1.10;
|
||||
}
|
||||
$this->hydrogecredits_alliancene += $credits;
|
||||
|
||||
//On enlève la consomation d'hydrogène
|
||||
$prod_hy -= $conso_h;
|
||||
$this->addModif("force");
|
||||
$this->addModif("credits_alliance");
|
||||
|
||||
if ($retarray)
|
||||
return array(array(ceil($this->coeff_bat[0]*100), ceil($this->coeff_bat[1]*100), ceil($this->coeff_bat[2]*100), ceil($this->coeff_bat[3]*100), ceil($this->coeff_bat[4]*100)), array($prod_met, $prod_cri, $prod_hy + $conso_h, $energie_s*$this->coeff_bat[3], $energie_f*$this->coeff_bat[4]), array($energie_m*$this->coeff_bat[0], $energie_c*$this->coeff_bat[1], $energie_h*$this->coeff_bat[2], $conso_h, ($energie_s*$this->coeff_bat[3] + $energie_f*$this->coeff_bat[4])-($energie_m*$this->coeff_bat[0] + $energie_c*$this->coeff_bat[1] + $energie_h*$this->coeff_bat[2])));
|
||||
else
|
||||
return array($prod_met, $prod_cri, $prod_hy);
|
||||
return $perte;
|
||||
}
|
||||
|
||||
function creer($id_user)
|
||||
function addCreditsAlliance($credits)
|
||||
{
|
||||
//Définition des paramètres de l'utilisateur pour la planète
|
||||
$this->id_user = $id_user;
|
||||
$this->credits_alliance += $credits;
|
||||
$this->addModif("credits_alliance");
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
function creer($fondateur, $mere = false)
|
||||
{
|
||||
global $VAR, $table_alliances_creation;
|
||||
|
||||
$bdd = new BDD();
|
||||
$alliance = $bdd->unique_query("SELECT * FROM $table_alliances_creation WHERE fondateur = ".$fondateur->id_user." LIMIT 1;");
|
||||
$bdd->deconnexion();
|
||||
|
||||
//On vérifie que l'alliance n'a pas déjà été créée
|
||||
if (empty($alliance))
|
||||
return 1;
|
||||
|
||||
//Définition des paramètres de l'utilisateur pour l'astéroide
|
||||
$this->fondateur = $alliance["fondateur"];
|
||||
$this->race = $fondateur->race;
|
||||
|
||||
//Génération du nombre de case et de l'image en fonction de la position dans le système
|
||||
if ($this->position > MAX_PLANETE*0.75)
|
||||
{
|
||||
$this->cases = mt_rand(200,255);
|
||||
$this->image = mt_rand(1,19);
|
||||
}
|
||||
elseif ($this->position > MAX_PLANETE/2)
|
||||
{
|
||||
$this->cases = mt_rand(250,300);
|
||||
$this->image = mt_rand(1,19);
|
||||
}
|
||||
elseif ($this->position > MAX_PLANETE/4)
|
||||
{
|
||||
$this->cases = mt_rand(175,260);
|
||||
$this->image = mt_rand(1,19);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->cases = mt_rand(150,220);
|
||||
$this->image = mt_rand(1,19);
|
||||
}
|
||||
$this->sante = 1;
|
||||
$this->nom_alliance = $alliance["nom_alliance"];
|
||||
$this->tag = $alliance["tag"];
|
||||
$this->nom_asteroide = $alliance["nom_alliance"];
|
||||
$this->image_asteroide = mt_rand(1,3);
|
||||
|
||||
//Définition des principaux paramètres de la planète
|
||||
$this->nom_planete = 'Planète colonisée';
|
||||
$this->timestamp = time();
|
||||
$this->metal = 1000;
|
||||
$this->cristal = 700;
|
||||
$this->hydrogene = 0;
|
||||
|
||||
$this->modif = array("id_user", "nom_planete", "galaxie", "ss", "position", "image", "cases", "timestamp", "metal", "cristal", "hydrogene");
|
||||
$this->modif = array("fondateur", "race", "nom_alliance", "galaxie", "ss", "tag", "nom_asteroide", "image_asteroide");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -501,12 +203,10 @@ class Asteroide extends Surface
|
|||
*/
|
||||
function __destruct()
|
||||
{
|
||||
if (empty($this->ss) || empty($this->id_user))
|
||||
if (empty($this->ss) || empty($this->fondateur))
|
||||
return;
|
||||
if ($this->id_user == 1)
|
||||
var_dump($this);
|
||||
|
||||
global $var___db, $config, $table_planete;
|
||||
global $table_alliances;
|
||||
if (empty($this->id))
|
||||
{
|
||||
$out1 = array(); $out2 = array();
|
||||
|
|
@ -559,7 +259,7 @@ class Asteroide extends Surface
|
|||
}
|
||||
}
|
||||
}
|
||||
$bdd->query("INSERT INTO $table_planete (".implode(', ', $out1).", hash_planete) VALUES (".implode(', ', $out2).", SHA1(CONCAT('g',planete.galaxie,'s',planete.ss,'p',planete.position)))");
|
||||
$bdd->query("INSERT INTO $table_alliances (".implode(', ', $out1).") VALUES (".implode(', ', $out2).")");
|
||||
$bdd->deconnexion();
|
||||
}
|
||||
else
|
||||
|
|
@ -570,7 +270,7 @@ class Asteroide extends Surface
|
|||
for($i = 0; $i < $nb; $i++)
|
||||
{
|
||||
if ($this->modif[$i] == "force")
|
||||
$out[] = "timestamp = timestamp";
|
||||
$out[] = "metal = ".$this->metal.", cristal = ".$this->cristal.", hydrogene = ".$this->hydrogene;
|
||||
elseif ($this->modif[$i] == 'technologies')
|
||||
$this->modifUser[] = $this->modif[$i];
|
||||
elseif (is_object($this->{$this->modif[$i]}))
|
||||
|
|
@ -598,7 +298,7 @@ class Asteroide extends Surface
|
|||
else
|
||||
{
|
||||
if ($this->modif[$i] == "batiments")
|
||||
$calc = "batiment";
|
||||
$calc = "alli_batiment";
|
||||
elseif ($this->modif[$i] == "technologies")
|
||||
$calc = "technolo";
|
||||
elseif ($this->modif[$i] == "casernes")
|
||||
|
|
@ -624,7 +324,7 @@ class Asteroide extends Surface
|
|||
}
|
||||
if (!empty($out))
|
||||
{
|
||||
$sql = "UPDATE $table_planete SET timestamp = ".time().", metal = ".$this->metal.", cristal = ".$this->cristal.", hydrogene = ".$this->hydrogene.", ".implode(', ', $out)." WHERE id = ".$this->id.";";
|
||||
$sql = "UPDATE $table_alliances SET ".implode(', ', $out)." WHERE id = ".$this->id.";";
|
||||
if (DEBUG) echo '<br /><br />'.$sql;
|
||||
$bdd->query($sql);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
***************************************************************************/
|
||||
class Donnee
|
||||
{
|
||||
static function tailleFile(Planete $planete)
|
||||
static function tailleFile(Surface $planete)
|
||||
{
|
||||
//On calcul la taille maximale de la file d'attente
|
||||
if (!empty($planete->technologies[1]))
|
||||
|
|
@ -24,7 +24,7 @@ class Donnee
|
|||
}
|
||||
|
||||
|
||||
static function neededCheck($tableau, Planete $planete)
|
||||
static function neededCheck($tableau, Surface $planete)
|
||||
{
|
||||
if (!is_array($tableau)) return true;
|
||||
else
|
||||
|
|
@ -61,7 +61,7 @@ class Donnee
|
|||
}
|
||||
}
|
||||
|
||||
static function print_neededCheck($tableau, Planete $planete, $race)
|
||||
static function print_neededCheck($tableau, Surface $planete, $race)
|
||||
{
|
||||
global $LANG;
|
||||
if (!is_array($tableau)) return 'Débloqué';
|
||||
|
|
@ -451,6 +451,174 @@ class Donnee
|
|||
}
|
||||
|
||||
|
||||
static function metalAlli_Batiments($batiment, $niveau, Surface $planete)
|
||||
{
|
||||
switch($batiment)
|
||||
{
|
||||
case 0:
|
||||
$metal = ceil(pow(1.5, $niveau)*68);
|
||||
break;
|
||||
case 1:
|
||||
$metal = ceil(pow(1.6, $niveau)*53);
|
||||
break;
|
||||
case 2:
|
||||
$metal = ceil(pow(1.5, $niveau)*242);
|
||||
break;
|
||||
case 3:
|
||||
$metal = ceil(pow(1.5, $niveau)*92);
|
||||
break;
|
||||
case 4:
|
||||
$metal = ceil(pow(1.73, $niveau)*800);
|
||||
break;
|
||||
case 5:
|
||||
$metal = ceil(pow(2, $niveau)*750);
|
||||
break;
|
||||
default:
|
||||
trigger_error("Batiment d'alliance ".$batiment." introuvable dans les données", E_USER_ERROR);
|
||||
}
|
||||
|
||||
return $metal;
|
||||
}
|
||||
|
||||
static function cristalAlli_Batiments($batiment, $niveau, Surface $planete)
|
||||
{
|
||||
switch($batiment)
|
||||
{
|
||||
case 0:
|
||||
$cristal = ceil(pow(1.5, $niveau)*17);
|
||||
break;
|
||||
case 1:
|
||||
$cristal = ceil(pow(1.6, $niveau)*27);
|
||||
break;
|
||||
case 2:
|
||||
$cristal = ceil(pow(1.5, $niveau)*72);
|
||||
break;
|
||||
case 3:
|
||||
$cristal = ceil(pow(1.5, $niveau)*37);
|
||||
break;
|
||||
case 4:
|
||||
$cristal = ceil(pow(1.73, $niveau)*420);
|
||||
break;
|
||||
case 5:
|
||||
$cristal = ceil(pow(2, $niveau)*500);
|
||||
break;
|
||||
default:
|
||||
trigger_error("Batiment d'alliance ".$batiment." introuvable dans les données", E_USER_ERROR);
|
||||
}
|
||||
|
||||
return $cristal;
|
||||
}
|
||||
|
||||
|
||||
static function hydrogeneAlli_Batiments($batiment, $niveau, Surface $planete)
|
||||
{
|
||||
switch($batiment)
|
||||
{
|
||||
case 0:
|
||||
$hydrogene = 0;
|
||||
break;
|
||||
case 1:
|
||||
$hydrogene = 0;
|
||||
break;
|
||||
case 2:
|
||||
$hydrogene = 0;
|
||||
break;
|
||||
case 3:
|
||||
$hydrogene = 0;
|
||||
break;
|
||||
case 4:
|
||||
$hydrogene = ceil(pow(1.68, $niveau)*285);
|
||||
break;
|
||||
case 5:
|
||||
$hydrogene = 0;
|
||||
break;
|
||||
default:
|
||||
trigger_error("Batiment d'alliance ".$batiment." introuvable dans les données", E_USER_ERROR);
|
||||
}
|
||||
|
||||
return $hydrogene;
|
||||
}
|
||||
|
||||
|
||||
static function creditsAlli_Batiments($batiment, $niveau, Surface $planete)
|
||||
{
|
||||
switch($batiment)
|
||||
{
|
||||
case 0:
|
||||
$credits = ceil(pow(1.68, $niveau)*25);
|
||||
break;
|
||||
case 1:
|
||||
$credits = ceil(pow(1.68, $niveau)*85);
|
||||
break;
|
||||
case 2:
|
||||
$credits = ceil(pow(1.68, $niveau)*185);
|
||||
break;
|
||||
case 3:
|
||||
$credits = ceil(pow(1.68, $niveau)*285);
|
||||
break;
|
||||
case 4:
|
||||
$credits = ceil(pow(1.68, $niveau)*385);
|
||||
break;
|
||||
case 5:
|
||||
$credits = ceil(pow(1.68, $niveau)*485);
|
||||
break;
|
||||
default:
|
||||
trigger_error("Batiment d'alliance ".$batiment." introuvable dans les données", E_USER_ERROR);
|
||||
}
|
||||
|
||||
return $credits;
|
||||
}
|
||||
|
||||
static function tempsAlli_Batiments($batiment, $niveau, Surface $planete)
|
||||
{
|
||||
switch($batiment)
|
||||
{
|
||||
case 0:
|
||||
$sec = pow(1.5, $niveau)*6;
|
||||
break;
|
||||
case 1:
|
||||
$sec = pow(1.55, $niveau)*6;
|
||||
break;
|
||||
case 2:
|
||||
$sec = pow(1.624, $niveau)*6;
|
||||
break;
|
||||
case 3:
|
||||
$sec = pow(1.597, $niveau)*6;
|
||||
break;
|
||||
case 4:
|
||||
$sec = pow(1.7, $niveau)*6;
|
||||
break;
|
||||
case 5:
|
||||
$sec = ceil(pow(2, $niveau)*720);
|
||||
break;
|
||||
default:
|
||||
trigger_error("Batiment d'alliance ".$batiment." introuvable dans les données", E_USER_ERROR);
|
||||
}
|
||||
|
||||
//Accélération du temps de construction
|
||||
$sec /= VITESSE;
|
||||
|
||||
return $sec;
|
||||
}
|
||||
|
||||
|
||||
static function neededAlli_Batiments($batiment, Surface $planete)
|
||||
{
|
||||
//Maximum 5 niveaux
|
||||
if ($planete->batiments[$batiment] >= 5)
|
||||
return false;
|
||||
|
||||
global $neededAlli_Batiments;
|
||||
return Donnee::neededCheck($neededAlli_Batiments[$batiment], $planete);
|
||||
}
|
||||
|
||||
static function print_neededAlli_Batiments($batiment, Surface $planete, $race)
|
||||
{
|
||||
global $neededAlli_Batiments;
|
||||
return Donnee::print_neededCheck($neededAlli_Batiments[$batiment], $planete, $race);
|
||||
}
|
||||
|
||||
|
||||
static function donneeTechnologie($branche, $idTechnologie, $retour, Planete $planete)
|
||||
{
|
||||
//TODO : Faire un switch pour ne renvoyer le tableau que de la branche plutôt que ce tableau avec l'intégralité des branches.
|
||||
|
|
@ -1198,7 +1366,7 @@ class Donnee
|
|||
}
|
||||
|
||||
|
||||
static function metalVaisseaux($vaisseau, Planete $planete, $nombre = 1)
|
||||
static function metalVaisseaux($vaisseau, Surface $planete, $nombre = 1)
|
||||
{
|
||||
switch($vaisseau)
|
||||
{
|
||||
|
|
@ -1255,7 +1423,7 @@ class Donnee
|
|||
return $metal * $nombre;
|
||||
}
|
||||
|
||||
static function cristalVaisseaux($vaisseau, Planete $planete, $nombre = 1)
|
||||
static function cristalVaisseaux($vaisseau, Surface $planete, $nombre = 1)
|
||||
{
|
||||
switch($vaisseau)
|
||||
{
|
||||
|
|
@ -1312,7 +1480,7 @@ class Donnee
|
|||
return $cristal * $nombre;
|
||||
}
|
||||
|
||||
static function hydrogeneVaisseaux($vaisseau, Planete $planete, $nombre = 1)
|
||||
static function hydrogeneVaisseaux($vaisseau, Surface $planete, $nombre = 1)
|
||||
{
|
||||
switch($vaisseau)
|
||||
{
|
||||
|
|
@ -1369,7 +1537,7 @@ class Donnee
|
|||
return $hydrogene * $nombre;
|
||||
}
|
||||
|
||||
static function tempsVaisseaux($vaisseau, Planete $planete, $nombre = 1)
|
||||
static function tempsVaisseaux($vaisseau, Surface $planete, $nombre = 1)
|
||||
{
|
||||
switch($vaisseau)
|
||||
{
|
||||
|
|
@ -1437,13 +1605,23 @@ class Donnee
|
|||
$temps /= VITESSE;
|
||||
|
||||
//On tient compte des bonus
|
||||
return ceil($temps/pow(1.25, ($planete->batiments[8] - $moins))) * $nombre;
|
||||
if (SURFACE == "planete")
|
||||
return ceil($temps/pow(1.25, ($planete->batiments[8] - $moins))) * $nombre;
|
||||
else
|
||||
return ($temps * $nombre);
|
||||
}
|
||||
|
||||
static function neededVaisseaux($vaisseau, Planete $planete)
|
||||
static function neededVaisseaux($vaisseau, Surface $planete)
|
||||
{
|
||||
global $neededVaisseaux;
|
||||
return Donnee::neededCheck($neededVaisseaux[$vaisseau], $planete);
|
||||
if (SURFACE == "asteroide")
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
global $neededVaisseaux;
|
||||
return Donnee::neededCheck($neededVaisseaux[$vaisseau], $planete);
|
||||
}
|
||||
}
|
||||
|
||||
static function print_neededVaisseaux($vaisseau, Planete $planete, $race)
|
||||
|
|
|
|||
|
|
@ -1,12 +1,13 @@
|
|||
<?php
|
||||
//Gestion des dépendances, on importe les classes nécessaires à la classe en cours
|
||||
include_once("game/Class/class.exceptionHB.php");
|
||||
include_once("game/Class/class.donnee.php");
|
||||
|
||||
/***************************************************************************
|
||||
* class.file.php
|
||||
* ----------------
|
||||
* begin : Samedi 11 octobre 2008
|
||||
* update : Jeudi 26 février 2009
|
||||
* update : Vendredi 1e mai 2009
|
||||
* email : nemunaire@gmail.com
|
||||
*
|
||||
*
|
||||
|
|
@ -27,7 +28,9 @@ class File
|
|||
function reajusteVacances($timeVac)
|
||||
{
|
||||
if (isset($this->file[0]))
|
||||
$this->file[0] += time() - $timeVac;
|
||||
$this->time += time() - $timeVac;
|
||||
|
||||
return serialize($this);
|
||||
}
|
||||
|
||||
function refreshTime()
|
||||
|
|
@ -69,6 +72,27 @@ class File
|
|||
}
|
||||
}
|
||||
}
|
||||
elseif ($this->type == "alli_batiments")
|
||||
{
|
||||
$batiments = $planete->batiments;
|
||||
foreach ($this->file as $key => $element)
|
||||
{
|
||||
if ($element[1]) //Cas d'une démolition
|
||||
{
|
||||
$temps = Donnee::tempsAlli_Batiments($element[0], $batiments[$element[0]]--, $planete) * 0.6;
|
||||
if (count($out) == 0)
|
||||
$temps -= time() - $this->time;
|
||||
$out[$key] = array($element[0], $element[1], ceil($temps));
|
||||
}
|
||||
else //Cas d'une construction
|
||||
{
|
||||
$temps = Donnee::tempsAlli_Batiments($element[0], ++$batiments[$element[0]], $planete);
|
||||
if (count($out) == 0)
|
||||
$temps -= time() - $this->time;
|
||||
$out[$key] = array($element[0], $element[1], ceil($temps));
|
||||
}
|
||||
}
|
||||
}
|
||||