Commit a0052df4 authored by Artheriom's avatar Artheriom

Diverses mises à jours. Rappel : Python 3.x + uniquement.

parent a7401deb
......@@ -3,10 +3,9 @@ from tkinter import *
#C'est la fonction appellée par le programme principal. Elle contient tout.
def Fenetre():
#Deux fonctions car en fait, l'appuie de la touche entrée envoie un event... Et l'appuie sur le bouton n'en envoie pas.
#Donc, si on utilise pas deux fonctions, ça plante. Merci Tkinter, merci Python. <3
def LoginUser():
def LoginUser(event=42):
user = ChampPseudo.get()
if user != "" and user.strip() != "":
global username
......@@ -14,9 +13,6 @@ def Fenetre():
FenetreLogin.destroy() #Destruction de la fenêtre de login
return username #On renvoie l'username
def LoginUserKeyStroke(event):
LoginUser() #Renvoie à la fonction utilisée. Merci python. <3
def DestroyWindowInEmergency(): #Au cas où on ferme la fenêtre. Pour pas faire planter ensuite, on défini un username Anonyme et on le return.
global username
username = "Anonyme"
......@@ -39,7 +35,7 @@ def Fenetre():
ChampPseudo = Entry(AffichageLogin)
ChampPseudo.config(fg="blue", font=('courrier', 15, 'bold'))
ChampPseudo.bind("<Return>", LoginUserKeyStroke)
ChampPseudo.bind("<Return>", LoginUser)
ChampPseudo.pack(side=LEFT,ipadx =80,padx=20,pady=70)
BoutonLogin = Button(AffichageLogin, text ="Connection", command=LoginUser)
......
# -*- coding: utf-8 -*-
import socket
import urllib.request,urllib.parse,urllib.error
import os, sys
def GetLevels():
try:
#On essaye de supprimer le fichier de niveau qui existe déjà
os.remove('levels/levels.skb')
except:
pass
#On télécharge le nouveau fichier depuis le serveur Internet
urllib.request.urlretrieve('http://sokoban.goldheim.fr/getLevels.php', "levels/levels.skb")
......@@ -8,20 +8,13 @@ from time import sleep
#Include fenêtre login
from FenetreLogin import *
from MenuPrincipal import *
from CoInternet import *
from GetLevels import *
from RetrieveLevels import *
#On va chercher le login.
#Récupération du nom d'utilisateur
username = Fenetre()
#On cherche une connexion à Internet.
ConnectionInternet = CheckInternetConnection()
#On récupére les niveaux depuis le Oueb si on est connecté.
if ConnectionInternet == True :
GetLevels()
#Appel du menu général et du jeu.
#Récupération des niveaux depuis internet
RetrieveLevels()
#Appel du jeu.
Main(username)
......@@ -39,7 +39,7 @@ def Main(username):
BoutonCampain = Button(AffichageMenu, text ="Mode Aventure", width=18,fg="white",bg="#000000",borderwidth=0,activebackground="black",activeforeground="white", font=("Tahoma",16),command=ExitToAdventure)
BoutonCampain.pack(side=TOP,ipadx=45,pady=10,padx=150)
BoutonFun = Button(AffichageMenu, text ="Mode \"Fun\"", width=18,fg="white",bg="#000000",command=ExitToFun,borderwidth=0,activebackground="black",activeforeground="white", font=("Tahoma",16))
BoutonFun = Button(AffichageMenu, text ="Sélection du niveau", width=18,fg="white",bg="#000000",command=ExitToFun,borderwidth=0,activebackground="black",activeforeground="white", font=("Tahoma",16))
BoutonFun.pack(side=TOP,ipadx=45,pady=10,padx=150)
BoutonQuit = Button(AffichageMenu,command=Quitter, text ="Quitter", width=18,fg="white",bg="#000000",borderwidth=0,activebackground="black",activeforeground="white", font=("Tahoma",16))
......
# -*- coding: utf-8 -*-
import socket
import urllib.request,urllib.parse,urllib.error
import os, sys
def CheckInternetConnection():
try:
host = socket.gethostbyname("sokoban.goldheim.fr") #On récupére l'IP brute de nelva
def RetrieveLevels():
try: #Tentative de connection au serveur (Vérification online-mode)
host = socket.gethostbyname("sokoban.goldheim.fr") #On récupére l'IP du serveur
s = socket.create_connection((host, 80), 2) #On ouvre un socket.
return True
connected= True
except:
pass #Permet d'éviter de faire totalement crasher le programme.
return False
pass
connected= False
if connected == True: #Récupération des niveaux si on est connecté.
urllib.request.urlretrieve('http://sokoban.goldheim.fr/getLevels.php', "levels/levels.skb")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment