UNPKG

hobgoblin

Version:

A framework for writing roguelike games in JavaScript, implementing ROT.js

123 lines (111 loc) 2.81 kB
Game.ItemRepository = new Game.Repository('items', Game.Item); Game.ItemRepository.define('rock', { name: 'rock', character: '*', foreground: 'white', attackValue: 2, throwable: true, stackable: true, mixins: [Game.ItemMixins.Throwable, Game.ItemMixins.Stackable] }); Game.ItemRepository.define('apple', { name: 'apple', character: '%', foreground: 'red', foodValue: 50, stackable: true, mixins: [Game.ItemMixins.Edible, Game.ItemMixins.Stackable] }); Game.ItemRepository.define('melon', { name: 'melon', character: '%', foreground: 'lightgreen', foodValue: 35, consumptions: 4, mixins: [Game.ItemMixins.Edible] }); Game.ItemRepository.define('corpse', { name: 'corpse', character: '%', foodValue: 75, consumptions: 1, mixins: [Game.ItemMixins.Edible] }, { disableRandomCreation: true }); // Weapons Game.ItemRepository.define('dagger', { name: 'dagger', character: ')', foreground: 'gray', attackValue: 5, wieldable: true, throwable: true, mixins: [Game.ItemMixins.Equippable, Game.ItemMixins.Throwable] }, { disableRandomCreation: true }); Game.ItemRepository.define('sword', { name: 'sword', character: ')', foreground: 'white', attackValue: 10, wieldable: true, mixins: [Game.ItemMixins.Equippable] }, { disableRandomCreation: true }); Game.ItemRepository.define('staff', { name: 'staff', character: ')', foreground: 'yellow', attackValue: 5, defenseValue: 3, wieldable: true, mixins: [Game.ItemMixins.Equippable] }, { disableRandomCreation: true }); // Wearables Game.ItemRepository.define('tunic', { name: 'tunic', character: '[', foreground: 'green', defenseValue: 2, wearable: true, mixins: [Game.ItemMixins.Equippable] }, { disableRandomCreation: true }); Game.ItemRepository.define('chainmail', { name: 'chainmail', character: '[', foreground: 'white', defenseValue: 4, wearable: true, mixins: [Game.ItemMixins.Equippable] }, { disableRandomCreation: true }); Game.ItemRepository.define('platemail', { name: 'platemail', character: '[', foreground: 'aliceblue', defenseValue: 6, wearable: true, mixins: [Game.ItemMixins.Equippable] }, { disableRandomCreation: true }); Game.ItemRepository.define('pumpkin', { name: 'pumpkin', character: '%', foreground: 'orange', foodValue: 50, attackValue: 2, defenseValue: 2, wearable: true, wieldable: true, throwable: true, mixins: [Game.ItemMixins.Edible, Game.ItemMixins.Equippable, Game.ItemMixins.Throwable] });