mirror of
https://github.com/evennia/evennia.git
synced 2026-03-17 21:36:30 +01:00
Scripting support is now in! See cmd_look (the end of it), scripthandler.py, and scripts/basicobject.py for very brief examples. I'm not sure how well this is going to scale, I had to kludge the import a bit due to some oddities with __import__. There has to be a better way to do this, hopefully I'll be able to figure it out. In any case, expect basicobject to start fleshing out. You'll be able to use it directly or sub-class it with your own stuff.
This commit is contained in:
parent
27c0e7a873
commit
94ceec3719
5 changed files with 91 additions and 10 deletions
|
|
@ -2,4 +2,33 @@
|
|||
This will be the base object type/interface that all scripts are derived from by
|
||||
default. It will have the necessary outline for developers to sub-class and override.
|
||||
"""
|
||||
test = 123
|
||||
|
||||
class BasicObject:
|
||||
def __init__(self, source_obj):
|
||||
"""
|
||||
Get our ducks in a row.
|
||||
|
||||
source_obj: (Object) A reference to the object being scripted (the child).
|
||||
"""
|
||||
self.source_obj = source_obj
|
||||
|
||||
def a_desc(self, looker):
|
||||
"""
|
||||
Perform this action when someone uses the LOOK command on the object.
|
||||
|
||||
looker: (Object) Reference to the looker
|
||||
"""
|
||||
# Un-comment the line below for an example
|
||||
#print "SCRIPT TEST: %s looked at %s." % (looker, self.source_obj)
|
||||
pass
|
||||
|
||||
def class_factory(source_obj):
|
||||
"""
|
||||
This method is called any script you retrieve (via the scripthandler). It
|
||||
creates an instance of the class and returns it transparently. I'm not
|
||||
sure how well this will scale, but we'll find out. We may need to
|
||||
re-factor this eventually.
|
||||
|
||||
source_obj: (Object) A reference to the object being scripted (the child).
|
||||
"""
|
||||
return BasicObject(source_obj)
|
||||
Loading…
Add table
Add a link
Reference in a new issue