I am working on a project and I am running Python 2.7 and Panda3D v1.8.1. I have been unable to find out how to access a variable that was defined in a function. For the setup I have two files. One file manages events and the second file loads models. Here is an example of what I have:
class secondFile(object):
def create_something(self):
variable = loader.loadModel('myModel.bam')
variable.setPos(123,1231,5)
In my first file I want to be able to access the variable so I can call a function when my character collides with it. I was reading other similar questions but none of the answers seemed to work for what I was trying to do.
DO = DirectObject()
def collideEventIn():
print "Collision"
collisionHandler.addInPattern('%fn-into-%in')
DO.accept('character-into-variable', collideEventIn)
I have tried this:
class secondFile(object):
def create_something(self):
create_something.variable = loader.loadModel('myModel.bam')
create_something.variable.setPos(123,1231,5)
Main file:
DO = DirectObject()
variable = secondFile().create_something.variable
def collideEventIn():
print "Collision"
collisionHandler.addInPattern('%fn-into-%in')
DO.accept('character-into-variable', collideEventIn)
However it didnt seem to work.