Le convertisseur permet dorénavant d'importer les menus au format Shelves.

Il vient chercher les données contenues dans le même repertoire (user pour utilisateur et data pour donnée du jeu) et les stocke selon le schéma suivant.

Stocké dans la base globale "dbdata" du jeu:
-menu dans la variable "dat"
-elements de jeux dans la variable "art"
-pour la définition des niveaux de jeu "worlds"

Stocké dans la base "utilisateur" du jeu situé dans le repertoire personnel de l'utilisateur:
-pour l'enregistrement des parties utilisateurs "Uworlds"
-pour l'enregistrement de l'avancement du jeu "Finished"

Il crée aussi un fichier "dbsrc" qui contient un programme en python permettant de régéréner la base de donnée "dbdata" au format Shelves
This commit is contained in:
Le_dahut 2014-03-28 18:09:05 +01:00
parent 44600c0b0e
commit 55baeec433
1 changed files with 28 additions and 8 deletions

View File

@ -8,7 +8,7 @@ import pyglet
from pyglet import image from pyglet import image
from os.path import expanduser from os.path import expanduser
global items,worlds,finished global items,worlds,finished,art,dat
'''********************* fonctions Chargement ANCIENNE ****************************************************************''' '''********************* fonctions Chargement ANCIENNE ****************************************************************'''
@ -43,8 +43,8 @@ def loaditems(n,file):
items[liste[i][0]][liste[0][j]]=float(liste[i][j][1:]) items[liste[i][0]][liste[0][j]]=float(liste[i][j][1:])
elif liste[i][j][:1]=="@": elif liste[i][j][:1]=="@":
items[liste[i][0]][liste[0][j]]=items[liste[i][j][1:]] items[liste[i][0]][liste[0][j]]=items[liste[i][j][1:]]
elif liste[i][j][:1]=="%": #elif liste[i][j][:1]=="%":
items[liste[i][0]][liste[0][j]]=image.load(liste[i][j][1:]) # items[liste[i][0]][liste[0][j]]=image.load(liste[i][j][1:])
else: else:
items[liste[i][0]][liste[0][j]]=liste[i][j] items[liste[i][0]][liste[0][j]]=liste[i][j]
if n!=0: if n!=0:
@ -119,6 +119,8 @@ loaditems(int("0x20000", 16),"data/menus.dat")
loaditems(0,"data/elements.dat") loaditems(0,"data/elements.dat")
worlds=[] worlds=[]
Uworlds=[] Uworlds=[]
art={}
dat={}
verifyhome() verifyhome()
readpref("user/pref.dat") readpref("user/pref.dat")
linked=finished linked=finished
@ -129,7 +131,6 @@ for k in linked:
for i in range(sizeworld): for i in range(sizeworld):
ele=items[items[int("0x40000",16)+i]] ele=items[items[int("0x40000",16)+i]]
readgrid(ele['file']) readgrid(ele['file'])
print "situation", ele['world'],ele['grid'],len(worlds)
while len(worlds)<=ele['world']: while len(worlds)<=ele['world']:
worlds.append(0) worlds.append(0)
worlds[ele['world']]=[] worlds[ele['world']]=[]
@ -163,7 +164,6 @@ for i in range(sizeworld):
world_art=[] world_art=[]
if os.path.exists("user/"+ele['file']): if os.path.exists("user/"+ele['file']):
print ele['file']
readgrid("user/"+ele['file']) readgrid("user/"+ele['file'])
while len(Uworlds)<=ele['world']: while len(Uworlds)<=ele['world']:
Uworlds.append(0) Uworlds.append(0)
@ -191,7 +191,6 @@ for i in range(sizeworld):
'maxtemp':maxtemp, 'maxtemp':maxtemp,
'world_new':world_new, 'world_new':world_new,
'world_art':world_art} 'world_art':world_art}
write("dbdata",["worlds"])
write(gethome()+"/dbdata",["Uworlds","finished"]) write(gethome()+"/dbdata",["Uworlds","finished"])
f=open("dbsrc", 'wb+') f=open("dbsrc", 'wb+')
afile="""#!/usr/bin/env python afile="""#!/usr/bin/env python
@ -209,6 +208,27 @@ def write(afile,var):
global worlds global worlds
worlds=""" worlds="""+str(worlds).replace(", '",",\n '").replace(", [",", \n\t\t\t[")+"\n"
f.write(afile+str(worlds).replace(", '",",\n '").replace(", [",", \n\t\t\t[")+"""\nwrite("dbdata",["worlds"])""") f.write(afile)
for i in range(56):
ele=items[items[int("0x30000",16)+i]]
art[ele['value']]=ele
art[ele['value']]['activable']=art[ele['value']]['activable']==1
art[ele['value']]['nom']=items[int("0x30000",16)+i]
for i in items.keys():
if i<int("0x10000",16):
ele=items[items[i]]
art[ele['value']]=ele
art[ele['value']]['nom']=items[i]
elif i<int("0x30000",16):
ele=items[items[i]]
dat[ele['value']]=ele
dat[ele['value']]['nom']=items[i]
afile="""art="""+str(art).replace("}, ","},\n")+"\n"
f.write(afile)
afile="""dat="""+str(dat).replace("}, ","},\n")+"\n"
f.write(afile)
afile="""write("dbdata",["worlds","art","dat"])"""
f.write(afile)
f.close() f.close()
write("dbdata",["worlds","art","dat"])