mirror of
https://github.com/doublespeakgames/adarkroom.git
synced 2026-05-28 00:01:54 +08:00
+400
-400
@@ -1,400 +1,400 @@
|
||||
/**
|
||||
* Events that can occur when wandering around the world
|
||||
**/
|
||||
Events.Encounters = [
|
||||
/* Tier 1 */
|
||||
{ /* Snarling Beast */
|
||||
title: _('A Snarling Beast'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'snarling beast',
|
||||
enemyName: _('snarling beast'),
|
||||
deathMessage: _('the snarling beast is dead'),
|
||||
chara: 'B',
|
||||
damage: 1,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 5,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a snarling beast leaps out of the underbrush')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Gaunt Man */
|
||||
title: _('A Gaunt Man'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'gaunt man',
|
||||
enemyName: _('gaunt man'),
|
||||
deathMessage: _('the gaunt man is dead'),
|
||||
chara: 'G',
|
||||
damage: 2,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 6,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.5
|
||||
}
|
||||
},
|
||||
notification: _('a gaunt man approaches, a crazed look in his eye')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Strange Bird */
|
||||
title: _('A Strange Bird'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'strange bird',
|
||||
enemyName: _('strange bird'),
|
||||
deathMessage: _('the strange bird is dead'),
|
||||
chara: 'B',
|
||||
damage: 3,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 4,
|
||||
loot: {
|
||||
'scales': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.5
|
||||
},
|
||||
'meat': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a strange looking bird speeds across the plains')
|
||||
}
|
||||
}
|
||||
},
|
||||
/* Tier 2*/
|
||||
{ /* Shivering Man */
|
||||
title: _('A Shivering Man'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'shivering man',
|
||||
enemyName: _('shivering man'),
|
||||
deathMessage: _('the shivering man is dead'),
|
||||
chara: 'S',
|
||||
damage: 5,
|
||||
hit: 0.5,
|
||||
attackDelay: 1,
|
||||
health: 20,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.7
|
||||
}
|
||||
},
|
||||
notification: _('a shivering man approaches and attacks with surprising strength')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Man-eater */
|
||||
title: _('A Man-Eater'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'man-eater',
|
||||
enemyName: _('man-eater'),
|
||||
deathMessage: _('the man-eater is dead'),
|
||||
chara: 'E',
|
||||
damage: 3,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 25,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a large creature attacks, claws freshly bloodied')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Scavenger */
|
||||
title: _('A Scavenger'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'scavenger',
|
||||
enemyName: _('scavenger'),
|
||||
deathMessage: _('the scavenger is dead'),
|
||||
chara: 'S',
|
||||
damage: 4,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 30,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'iron': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a scavenger draws close, hoping for an easy score')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Huge Lizard */
|
||||
title: _('A Huge Lizard'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'lizard',
|
||||
enemyName: _('lizard'),
|
||||
deathMessage: _('the lizard is dead'),
|
||||
chara: 'L',
|
||||
damage: 5,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 20,
|
||||
loot: {
|
||||
'scales': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.5
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('the grass thrashes wildly as a huge lizard pushes through')
|
||||
}
|
||||
}
|
||||
},
|
||||
/* Tier 3*/
|
||||
{ /* Feral Terror */
|
||||
title: _('A Feral Terror'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'feral terror',
|
||||
enemyName: _('feral terror'),
|
||||
deathMessage: _('the feral terror is dead'),
|
||||
chara: 'F',
|
||||
damage: 6,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 45,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a beast, wilder than imagining, erupts out of the foliage')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Soldier */
|
||||
title: _('A Soldier'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'soldier',
|
||||
enemyName: _('soldier'),
|
||||
deathMessage: _('the soldier is dead'),
|
||||
ranged: true,
|
||||
chara: 'D',
|
||||
damage: 8,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 50,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'bullets': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'rifle': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a soldier opens fire from across the desert')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Sniper */
|
||||
title: _('A Sniper'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'sniper',
|
||||
enemyName: _('sniper'),
|
||||
deathMessage: _('the sniper is dead'),
|
||||
chara: 'S',
|
||||
damage: 15,
|
||||
hit: 0.8,
|
||||
attackDelay: 4,
|
||||
health: 30,
|
||||
ranged: true,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'bullets': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'rifle': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a shot rings out, from somewhere in the long grass')
|
||||
}
|
||||
}
|
||||
}
|
||||
];
|
||||
/**
|
||||
* Events that can occur when wandering around the world
|
||||
**/
|
||||
Events.Encounters = [
|
||||
/* Tier 1 */
|
||||
{ /* Snarling Beast */
|
||||
title: _('A Snarling Beast'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'snarling beast',
|
||||
enemyName: _('snarling beast'),
|
||||
deathMessage: _('the snarling beast is dead'),
|
||||
chara: 'B',
|
||||
damage: 1,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 5,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a snarling beast leaps out of the underbrush')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Gaunt Man */
|
||||
title: _('A Gaunt Man'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'gaunt man',
|
||||
enemyName: _('gaunt man'),
|
||||
deathMessage: _('the gaunt man is dead'),
|
||||
chara: 'G',
|
||||
damage: 2,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 6,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.5
|
||||
}
|
||||
},
|
||||
notification: _('a gaunt man approaches, a crazed look in his eye')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Strange Bird */
|
||||
title: _('A Strange Bird'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() <= 10 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'strange bird',
|
||||
enemyName: _('strange bird'),
|
||||
deathMessage: _('the strange bird is dead'),
|
||||
chara: 'B',
|
||||
damage: 3,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 4,
|
||||
loot: {
|
||||
'scales': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.5
|
||||
},
|
||||
'meat': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a strange looking bird speeds across the plains')
|
||||
}
|
||||
}
|
||||
},
|
||||
/* Tier 2*/
|
||||
{ /* Shivering Man */
|
||||
title: _('A Shivering Man'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'shivering man',
|
||||
enemyName: _('shivering man'),
|
||||
deathMessage: _('the shivering man is dead'),
|
||||
chara: 'S',
|
||||
damage: 5,
|
||||
hit: 0.5,
|
||||
attackDelay: 1,
|
||||
health: 20,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'teeth': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 3,
|
||||
chance: 0.7
|
||||
}
|
||||
},
|
||||
notification: _('a shivering man approaches and attacks with surprising strength')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Man-eater */
|
||||
title: _('A Man-Eater'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'man-eater',
|
||||
enemyName: _('man-eater'),
|
||||
deathMessage: _('the man-eater is dead'),
|
||||
chara: 'E',
|
||||
damage: 3,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 25,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a large creature attacks, claws freshly bloodied')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Scavenger */
|
||||
title: _('A Scavenger'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'scavenger',
|
||||
enemyName: _('scavenger'),
|
||||
deathMessage: _('the scavenger is dead'),
|
||||
chara: 'S',
|
||||
damage: 4,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 30,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'leather': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'iron': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a scavenger draws close, hoping for an easy score')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Huge Lizard */
|
||||
title: _('A Huge Lizard'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 10 && World.getDistance() <= 20 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'lizard',
|
||||
enemyName: _('lizard'),
|
||||
deathMessage: _('the lizard is dead'),
|
||||
chara: 'L',
|
||||
damage: 5,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 20,
|
||||
loot: {
|
||||
'scales': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.5
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('the grass thrashes wildly as a huge lizard pushes through')
|
||||
}
|
||||
}
|
||||
},
|
||||
/* Tier 3*/
|
||||
{ /* Feral Terror */
|
||||
title: _('A Feral Terror'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.FOREST;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'feral terror',
|
||||
enemyName: _('feral terror'),
|
||||
deathMessage: _('the feral terror is dead'),
|
||||
chara: 'F',
|
||||
damage: 6,
|
||||
hit: 0.8,
|
||||
attackDelay: 1,
|
||||
health: 45,
|
||||
loot: {
|
||||
'fur': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'meat': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 1
|
||||
},
|
||||
'teeth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
}
|
||||
},
|
||||
notification: _('a beast, wilder than imagining, erupts out of the foliage')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Soldier */
|
||||
title: _('A Soldier'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.BARRENS;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'soldier',
|
||||
enemyName: _('soldier'),
|
||||
deathMessage: _('the soldier is dead'),
|
||||
ranged: true,
|
||||
chara: 'D',
|
||||
damage: 8,
|
||||
hit: 0.8,
|
||||
attackDelay: 2,
|
||||
health: 50,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'bullets': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'rifle': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a soldier opens fire from across the desert')
|
||||
}
|
||||
}
|
||||
},
|
||||
{ /* Sniper */
|
||||
title: _('A Sniper'),
|
||||
isAvailable: function() {
|
||||
return World.getDistance() > 20 && World.getTerrain() == World.TILE.FIELD;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
combat: true,
|
||||
enemy: 'sniper',
|
||||
enemyName: _('sniper'),
|
||||
deathMessage: _('the sniper is dead'),
|
||||
chara: 'S',
|
||||
damage: 15,
|
||||
hit: 0.8,
|
||||
attackDelay: 4,
|
||||
health: 30,
|
||||
ranged: true,
|
||||
loot: {
|
||||
'cloth': {
|
||||
min: 5,
|
||||
max: 10,
|
||||
chance: 0.8
|
||||
},
|
||||
'bullets': {
|
||||
min: 1,
|
||||
max: 5,
|
||||
chance: 0.5
|
||||
},
|
||||
'rifle': {
|
||||
min: 1,
|
||||
max: 1,
|
||||
chance: 0.2
|
||||
},
|
||||
'medicine': {
|
||||
min: 1,
|
||||
max: 2,
|
||||
chance: 0.1
|
||||
}
|
||||
},
|
||||
notification: _('a shot rings out, from somewhere in the long grass')
|
||||
}
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
+66
-66
@@ -1,66 +1,66 @@
|
||||
/**
|
||||
* Events that can occur when any module is active (Except World. It's special.)
|
||||
**/
|
||||
Events.Global = [
|
||||
{ /* The Thief */
|
||||
title: _('The Thief'),
|
||||
isAvailable: function() {
|
||||
return (Engine.activeModule == Room || Engine.activeModule == Outside) && $SM.get('game.thieves') == 1;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
text: [
|
||||
_('the villagers haul a filthy man out of the store room.'),
|
||||
_("say his folk have been skimming the supplies."),
|
||||
_('say he should be strung up as an example.')
|
||||
],
|
||||
notification: _('a thief is caught'),
|
||||
blink: true,
|
||||
buttons: {
|
||||
'kill': {
|
||||
text: _('hang him'),
|
||||
nextScene: {1: 'hang'}
|
||||
},
|
||||
'spare': {
|
||||
text: _('spare him'),
|
||||
nextScene: {1: 'spare'}
|
||||
}
|
||||
}
|
||||
},
|
||||
'hang': {
|
||||
text: [
|
||||
_('the villagers hang the thief high in front of the store room.'),
|
||||
_('the point is made. in the next few days, the missing supplies are returned.')
|
||||
],
|
||||
onLoad: function() {
|
||||
$SM.set('game.thieves', 2);
|
||||
$SM.remove('income.thieves');
|
||||
$SM.addM('stores', $SM.get('game.stolen'));
|
||||
},
|
||||
buttons: {
|
||||
'leave': {
|
||||
text: _('leave'),
|
||||
nextScene: 'end'
|
||||
}
|
||||
}
|
||||
},
|
||||
'spare': {
|
||||
text: [
|
||||
_("the man says he's grateful. says he won't come around any more."),
|
||||
_("shares what he knows about sneaking before he goes.")
|
||||
],
|
||||
onLoad: function() {
|
||||
$SM.set('game.thieves', 2);
|
||||
$SM.remove('income.thieves');
|
||||
$SM.addPerk('stealthy');
|
||||
},
|
||||
buttons: {
|
||||
'leave': {
|
||||
text: _('leave'),
|
||||
nextScene: 'end'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
];
|
||||
/**
|
||||
* Events that can occur when any module is active (Except World. It's special.)
|
||||
**/
|
||||
Events.Global = [
|
||||
{ /* The Thief */
|
||||
title: _('The Thief'),
|
||||
isAvailable: function() {
|
||||
return (Engine.activeModule == Room || Engine.activeModule == Outside) && $SM.get('game.thieves') == 1;
|
||||
},
|
||||
scenes: {
|
||||
'start': {
|
||||
text: [
|
||||
_('the villagers haul a filthy man out of the store room.'),
|
||||
_("say his folk have been skimming the supplies."),
|
||||
_('say he should be strung up as an example.')
|
||||
],
|
||||
notification: _('a thief is caught'),
|
||||
blink: true,
|
||||
buttons: {
|
||||
'kill': {
|
||||
text: _('hang him'),
|
||||
nextScene: {1: 'hang'}
|
||||
},
|
||||
'spare': {
|
||||
text: _('spare him'),
|
||||
nextScene: {1: 'spare'}
|
||||
}
|
||||
}
|
||||
},
|
||||
'hang': {
|
||||
text: [
|
||||
_('the villagers hang the thief high in front of the store room.'),
|
||||
_('the point is made. in the next few days, the missing supplies are returned.')
|
||||
],
|
||||
onLoad: function() {
|
||||
$SM.set('game.thieves', 2);
|
||||
$SM.remove('income.thieves');
|
||||
$SM.addM('stores', $SM.get('game.stolen'));
|
||||
},
|
||||
buttons: {
|
||||
'leave': {
|
||||
text: _('leave'),
|
||||
nextScene: 'end'
|
||||
}
|
||||
}
|
||||
},
|
||||
'spare': {
|
||||
text: [
|
||||
_("the man says he's grateful. says he won't come around any more."),
|
||||
_("shares what he knows about sneaking before he goes.")
|
||||
],
|
||||
onLoad: function() {
|
||||
$SM.set('game.thieves', 2);
|
||||
$SM.remove('income.thieves');
|
||||
$SM.addPerk('stealthy');
|
||||
},
|
||||
buttons: {
|
||||
'leave': {
|
||||
text: _('leave'),
|
||||
nextScene: 'end'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
];
|
||||
|
||||
+3574
-3574
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user