// Staircase.js
(function () {
/*global adventurejs A*/
"use strict";
/**
* @ajspath adventurejs.Atom.Asset.Matter.Tangible.Thing.Climbable.Staircase
* @augments adventurejs.Climbable
* @class adventurejs.Staircase
* @ajsconstruct MyGame.createAsset({ "class":"Staircase", "name":"foo", [...] })
* @ajsconstructedby adventurejs.Game#createAsset
* @ajsnavheading MiscAssetClasses
* @param {String} game_name The name of the top level game object.
* @param {String} name A name for the object, to be serialized and used as ID.
* @summary A stairway to heaven?
* @classdesc
* <p>
* <strong>Staircase</strong> is a subclass of
* {@link adventurejs.Climbable|Climbable}.
* Player can climb on/to/from, and step on to climb.
* </p>
**/
class Staircase extends adventurejs.Climbable {
constructor(name, game_name) {
super(name, game_name);
this.class = "Staircase";
this.singlePluralPairs = [
["stairs", "stairs"],
["staircase", "staircases"],
];
this.group = [];
this.dimensions.height = 2;
this.default_aspect_for_climb = "on";
this.quirks.climb_means_go_on = true;
this.aspects.on.set({
player: { posture: "stand" },
});
}
}
adventurejs.Staircase = Staircase;
})();