NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

storage.py (1190B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\behaviors\storage.py
      2 import fsdlite
      3 
      4 class BehaviorTree(object):
      5 
      6     @staticmethod
      7     def __new__(cls, *more):
      8         obj = super(BehaviorTree, cls).__new__(cls, *more)
      9         obj.name = None
     10         obj.description = None
     11         obj.root = None
     12         return obj
     13 
     14     def __setstate__(self, data):
     15         for key, value in data.iteritems():
     16             if hasattr(self, key):
     17                 setattr(self, key, value)
     18 
     19 
     20 MAPPING = ()
     21 
     22 def BehaviortreeStorage():
     23     try:
     24         return BehaviortreeStorage._storage
     25     except AttributeError:
     26         BehaviortreeStorage._storage = CreateBehaviortreeStorage()
     27         return BehaviortreeStorage._storage
     28 
     29 
     30 def CreateBehaviortreeStorage(cache = 'behaviortrees.static'):
     31     return fsdlite.EveStorage(data='behaviortrees', cache=cache, mapping=MAPPING, indexes=[], coerce=int)
     32 
     33 
     34 def BehaviortreeStorageWithNoCache():
     35     try:
     36         return BehaviortreeStorageWithNoCache._storage
     37     except AttributeError:
     38         BehaviortreeStorageWithNoCache._storage = CreateBehaviortreeStorage(cache=None)
     39         return BehaviortreeStorageWithNoCache._storage