Save and load, get and set properties. bge.logic.globalDict( ___?)? What?


 
from bge import logic as gl
 
'''
#################
Python Controller:
Module Execution mode!
#################
'''
 
#save function
def save(cont):
 
   obj = cont.owner
   sens = co.sensor['Sensor1']
   gl.globalDict['variable1'] = value
 
 if sens.positive:
gl.saveGlobalDict()
 
def load(cont):
 
 
   obj = cont.owner
 
 
 value = gl.globalDict['valiable1']
 
 
   sens = co.sensor['Sensor2']
 
 
 
 
 
 if sens.positive:
 
 
   gl.loadGlobalDict()

Hey !

In line 22 it should be ‘variable1’ instead of ‘valiable1’.
It’s recommendable to use the console (Linux) to debug. Or the similar for your OS.

Try this:

######################
''' Python Controller:
Module Execution mode! '''
######################

import bge

cont = bge.logic.getCurrentController()

#save function
def save(cont):

   obj = cont.owner
   sens = cont.sensor['Sensor1']

   if sens.positive:
      bge.logic.globalDict['prop1'] = obj['prop']
      bge.logic.saveGlobalDict()

#load function
def load(cont):

   obj = cont.owner
   sens = cont.sensor['Sensor2']

   if sens.positive:
      bge.logic.loadGlobalDict()
      obj['prop'] = bge.logic.globalDict['prop1']

It’s not tested. I hope it works.
Bye.