私はプロジェクトに取り組んでおり、Python 2.7 と Panda3D v1.8.1 を実行しています。関数で定義された変数にアクセスする方法を見つけることができませんでした。セットアップには、2 つのファイルがあります。1 つのファイルでイベントを管理し、2 つ目のファイルでモデルをロードします。これが私が持っているものの例です:
class secondFile(object):
def create_something(self):
variable = loader.loadModel('myModel.bam')
variable.setPos(123,1231,5)
私の最初のファイルでは、変数にアクセスできるようにして、キャラクターが変数と衝突したときに関数を呼び出せるようにしたいと考えています。私は他の同様の質問を読んでいましたが、私がやろうとしていたことには答えがないようでした。
DO = DirectObject()
def collideEventIn():
print "Collision"
collisionHandler.addInPattern('%fn-into-%in')
DO.accept('character-into-variable', collideEventIn)
私はこれを試しました:
class secondFile(object):
def create_something(self):
create_something.variable = loader.loadModel('myModel.bam')
create_something.variable.setPos(123,1231,5)
メインファイル:
DO = DirectObject()
variable = secondFile().create_something.variable
def collideEventIn():
print "Collision"
collisionHandler.addInPattern('%fn-into-%in')
DO.accept('character-into-variable', collideEventIn)
しかし、それはうまくいかないようでした。