evennia.contrib.full_systems.evscaperoom.room¶
Room class and mechanics for the Evscaperoom.
This is a special room class that not only depicts the evscaperoom itself, it also acts as a central store for the room state, score etc. When deleting this, that particular escaperoom challenge should be gone.
- class evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom(*args, **kwargs)[source]¶
Bases:
EvscaperoomObject,DefaultRoomThe room to escape from.
- property state¶
- score(new_score, reason)[source]¶
We don’t score individually but for everyone in room together. You can only be scored for a given reason once.
- achievement(caller, achievement, subtext='')[source]¶
Give the caller a personal achievment. You will only ever get one of the same type
- Parameters:
caller (Object) – The receiver of the achievement.
achievement (str) – The title/name of the achievement.
subtext (str, optional) – Eventual subtext/explanation of the achievement.
- get_all_characters()[source]¶
Get the player characters in the room.
- Returns:
chars (Queryset) – The characters.
- tag_character(character, tag, category=None)[source]¶
Tag a given character in this room.
- Parameters:
character (Character) – Player character to tag.
tag (str) – Tag to set.
category (str, optional) – Tag-category. If unset, use room’s tagcategory.
- tag_all_characters(tag, category=None)[source]¶
Set a given tag on all players in the room.
- Parameters:
room (EvscapeRoom) – The room to escape from.
tag (str) – The tag to set.
category (str, optional) – If unset, will use the room’s tagcategory.
- at_object_receive(moved_obj, source_location, move_type='move', **kwargs)[source]¶
Called when an object arrives in the room. This can be used to sum up the situation, set tags etc.
- at_object_leave(moved_obj, target_location, move_type='move', **kwargs)[source]¶
Called when an object leaves the room; if this is a Character we need to clean them up and move them to the menu state.
- return_appearance(looker, **kwargs)[source]¶
Could be modified per state. We generally don’t worry about the contents of the object by default.
- exception DoesNotExist¶
Bases:
DoesNotExist,DoesNotExist
- exception MultipleObjectsReturned¶
- path = 'evennia.contrib.full_systems.evscaperoom.room.EvscapeRoom'¶
- typename = 'EvscapeRoom'¶