# Class: StageStoredClass (/nqtr/index/classes/StageStoredClass)



Defined in: [src/classes/quest/StageStoredClass.ts:30](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L30)

## Extends [#extends]

* `StoredClassModel`

## Extended by [#extended-by]

* [`StageBaseModel`](/nqtr/index/classes/StageBaseModel)

## Implements [#implements]

* `StageBaseInternalInterface`

## Constructors [#constructors]

### Constructor [#constructor]

\> **new StageStoredClass**(`id`, `props?`): `StageStoredClass`

Defined in: [src/classes/quest/StageStoredClass.ts:34](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L34)

#### Parameters [#parameters]

##### id [#id]

`string`

##### props? [#props]

[`StageStoredClassProps`](/nqtr/index/interfaces/StageStoredClassProps) = `{}`

#### Returns [#returns]

`StageStoredClass`

#### Overrides [#overrides]

`StoredClassModel.constructor`

## Properties [#properties]

### id [#id-1]

\> `readonly` **id**: `string`

Defined in: node_modules/@drincs/pixi-vn/dist/StoredClassModel-uMifeNzV.d.ts:41

Is id of the stored class. is unique for this class.

#### Implementation of [#implementation-of]

`StageBaseInternalInterface.id`

#### Inherited from [#inherited-from]

`StoredClassModel.id`

## Accessors [#accessors]

### canStart [#canstart]

#### Get Signature [#get-signature]

\> **get** **canStart**(): `boolean`

Defined in: [src/classes/quest/StageStoredClass.ts:81](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L81)

Check if the stage can start.

##### Example [#example]

```ts
export default class Stage extends StageStoredClass {
	override get canStart(): boolean {
		if (this.flagsRequired.length > 0 && !this.flagsRequired.every((flag) => storage.getFlag(flag.flag))) {
			return false;
		}
		return super.canStart;
	}
}
```

##### Returns [#returns-1]

`boolean`

#### Implementation of [#implementation-of-1]

`StageBaseInternalInterface.canStart`

***

### completed [#completed]

#### Get Signature [#get-signature-1]

\> **get** **completed**(): `boolean`

Defined in: [src/classes/quest/StageStoredClass.ts:52](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L52)

Check if the flag and goals are completed.
You can force the completion of the stage by setting the completed property to true.

##### Example [#example-1]

```ts
export default class Stage extends StageStoredClass {
	override get completed(): boolean {
		if (super.completed) {
			return true;
		}
		if (this.flags.length > 0) {
			if (!this.flags.every((flag) => storage.getFlag(flag.flag))) {
				return false;
			}
			return true;
		}
		return false;
	}
	override set completed(value: boolean) {
		super.completed = value;
	}
}
```

##### Returns [#returns-2]

`boolean`

#### Set Signature [#set-signature]

\> **set** **completed**(`value`): `void`

Defined in: [src/classes/quest/StageStoredClass.ts:55](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L55)

Check if the flag and goals are completed.
You can force the completion of the stage by setting the completed property to true.

##### Example [#example-2]

```ts
export default class Stage extends StageStoredClass {
	override get completed(): boolean {
		if (super.completed) {
			return true;
		}
		if (this.flags.length > 0) {
			if (!this.flags.every((flag) => storage.getFlag(flag.flag))) {
				return false;
			}
			return true;
		}
		return false;
	}
	override set completed(value: boolean) {
		super.completed = value;
	}
}
```

##### Parameters [#parameters-1]

###### value [#value]

`boolean`

##### Returns [#returns-3]

`void`

#### Implementation of [#implementation-of-2]

`StageBaseInternalInterface.completed`

***

### deltaDateRequired [#deltadaterequired]

#### Get Signature [#get-signature-2]

\> **get** **deltaDateRequired**(): `number`

Defined in: [src/classes/quest/StageStoredClass.ts:122](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L122)

The number of day/date required to start the stage.

##### Returns [#returns-4]

`number`

#### Implementation of [#implementation-of-3]

`StageBaseInternalInterface.deltaDateRequired`

***

### onEnd [#onend]

#### Get Signature [#get-signature-3]

\> **get** **onEnd**(): [`OnRunEvent`](/nqtr/index/type-aliases/OnRunEvent)\<[`StageInterface`](/nqtr/index/interfaces/StageInterface)> | `undefined`

Defined in: [src/classes/quest/StageStoredClass.ts:48](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L48)

The function that will be called when the stage ends.

##### Returns [#returns-5]

[`OnRunEvent`](/nqtr/index/type-aliases/OnRunEvent)\<[`StageInterface`](/nqtr/index/interfaces/StageInterface)> | `undefined`

#### Implementation of [#implementation-of-4]

`StageBaseInternalInterface.onEnd`

***

### onStart [#onstart]

#### Get Signature [#get-signature-4]

\> **get** **onStart**(): [`OnRunEvent`](/nqtr/index/type-aliases/OnRunEvent)\<[`StageInterface`](/nqtr/index/interfaces/StageInterface)> | `undefined`

Defined in: [src/classes/quest/StageStoredClass.ts:43](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L43)

The function that will be called when the stage starts.

##### Returns [#returns-6]

[`OnRunEvent`](/nqtr/index/type-aliases/OnRunEvent)\<[`StageInterface`](/nqtr/index/interfaces/StageInterface)> | `undefined`

#### Implementation of [#implementation-of-5]

`StageBaseInternalInterface.onStart`

***

### questsRequired [#questsrequired]

#### Get Signature [#get-signature-5]

\> **get** **questsRequired**(): [`QuestsRequiredType`](/nqtr/index/type-aliases/QuestsRequiredType)\[]

Defined in: [src/classes/quest/StageStoredClass.ts:127](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L127)

The list of quests required to start the stage.

##### Returns [#returns-7]

[`QuestsRequiredType`](/nqtr/index/type-aliases/QuestsRequiredType)\[]

#### Implementation of [#implementation-of-6]

`StageBaseInternalInterface.questsRequired`

***

### startDate [#startdate]

#### Get Signature [#get-signature-6]

\> **get** **startDate**(): `number` | `undefined`

Defined in: [src/classes/quest/StageStoredClass.ts:73](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L73)

The date when the stage starts.

##### Returns [#returns-8]

`number` | `undefined`

#### Implementation of [#implementation-of-7]

`StageBaseInternalInterface.startDate`

***

### started [#started]

#### Get Signature [#get-signature-7]

\> **get** **started**(): `boolean`

Defined in: [src/classes/quest/StageStoredClass.ts:59](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L59)

If the stage is started.

##### Returns [#returns-9]

`boolean`

#### Set Signature [#set-signature-1]

\> **set** **started**(`value`): `void`

Defined in: [src/classes/quest/StageStoredClass.ts:62](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L62)

If the stage is started.

##### Parameters [#parameters-2]

###### value [#value-1]

`boolean`

##### Returns [#returns-10]

`void`

#### Implementation of [#implementation-of-8]

`StageBaseInternalInterface.started`

## Methods [#methods]

### getStorageProperty() [#getstorageproperty]

\> `protected` **getStorageProperty**\<`T`>(`propertyName`, `idToUse?`): `T` | `undefined`

Defined in: node_modules/@drincs/pixi-vn/dist/StoredClassModel-uMifeNzV.d.ts:56

Get a property from the storage.

#### Type Parameters [#type-parameters]

##### T [#t]

`T` = `StorageElementType`

#### Parameters [#parameters-3]

##### propertyName [#propertyname]

`string`

The name of the property to get.

##### idToUse? [#idtouse]

`string`

The id of the instance to get the property.

#### Returns [#returns-11]

`T` | `undefined`

The value of the property. If the property is not found, returns undefined.

#### Default [#default]

```ts
this.id
```

#### Inherited from [#inherited-from-1]

`StoredClassModel.getStorageProperty`

***

### inizialize() [#inizialize]

\> **inizialize**(): `void`

Defined in: [src/classes/quest/StageStoredClass.ts:103](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L103)

#### Returns [#returns-12]

`void`

***

### migrateOldStorage() [#migrateoldstorage]

\> `protected` **migrateOldStorage**(`oldCategoryId?`): `void`

Defined in: node_modules/@drincs/pixi-vn/dist/StoredClassModel-uMifeNzV.d.ts:37

#### Parameters [#parameters-4]

##### oldCategoryId? [#oldcategoryid]

`string`

#### Returns [#returns-13]

`void`

#### Inherited from [#inherited-from-2]

`StoredClassModel.migrateOldStorage`

***

### setStorageProperty() [#setstorageproperty]

\> `protected` **setStorageProperty**\<`T`>(`propertyName`, `value`): `void`

Defined in: node_modules/@drincs/pixi-vn/dist/StoredClassModel-uMifeNzV.d.ts:49

Update a property in the storage.

#### Type Parameters [#type-parameters-1]

##### T [#t-1]

`T`

The type of the value to set. (Deprecated, it is not necessary to specify the type of the value, it will be inferred from the value)

#### Parameters [#parameters-5]

##### propertyName [#propertyname-1]

`string`

The name of the property to set.

##### value [#value-2]

`StorageElementType`

The value to set. If is undefined, the property will be removed from the storage.

#### Returns [#returns-14]

`void`

#### Inherited from [#inherited-from-3]

`StoredClassModel.setStorageProperty`

***

### start() [#start]

\> **start**(`props`): `Promise`\<`void`>

Defined in: [src/classes/quest/StageStoredClass.ts:110](https://github.com/DRincs-Productions/nqtr/blob/db22fe9e7612d547ff25befcc444cf095348917d/src/classes/quest/StageStoredClass.ts#L110)

The function that will be called when the stage starts.

#### Parameters [#parameters-6]

##### props [#props-1]

[`OnRunProps`](/nqtr/index/interfaces/OnRunProps)

#### Returns [#returns-15]

`Promise`\<`void`>

#### Implementation of [#implementation-of-9]

`StageBaseInternalInterface.start`
