Система счёта
This commit is contained in:
parent
3ce16f20dc
commit
a5ba7501c1
|
@ -20,3 +20,8 @@
|
|||
стрелять в рукав
|
||||
вставить руку в робота
|
||||
включить робота
|
||||
выставить К
|
||||
стрелять в булавку
|
||||
выставить Т
|
||||
стрелять в щит
|
||||
юг
|
||||
|
|
|
@ -28,12 +28,21 @@ function set_pic(f)
|
|||
--end
|
||||
end
|
||||
|
||||
global {
|
||||
score = 0,
|
||||
maxscore = 2
|
||||
}
|
||||
game.dsc = ''
|
||||
player.description = "Здесь нет зеркал. Но хотя бы ноги выглядят прекрасно.";
|
||||
set_pic('wall.jpg')
|
||||
pl.plural = false
|
||||
pl.pronouns = 'fem'
|
||||
|
||||
function givepoint()
|
||||
score = score + 1;
|
||||
pn 'Ваш счёт увеличился на 1 очко.';
|
||||
end
|
||||
|
||||
dofile('custom_parser.lua')
|
||||
dofile('rooms/end.lua')
|
||||
dofile('rooms/objects.lua')
|
||||
|
|
|
@ -1,4 +1,8 @@
|
|||
room {
|
||||
nam = 'end';
|
||||
dsc = 'КОНЕЦ';
|
||||
title = 'ВЫ ВЫИГРАЛИ';
|
||||
dsc = function()
|
||||
pn 'КОНЕЦ';
|
||||
pn('Вы набрали '..score..' очков из '..maxscore..' возможных.');
|
||||
end
|
||||
}
|
||||
|
|
|
@ -49,6 +49,7 @@ obj {
|
|||
obj {
|
||||
-"патина";
|
||||
canonical = 'патина';
|
||||
scored = false;
|
||||
nam = 'patina';
|
||||
oncreate = function()
|
||||
p 'Блестящие поверхности вокруг начинают покрываться слоем патины.'
|
||||
|
@ -74,5 +75,8 @@ obj {
|
|||
-"булава";
|
||||
canonical = 'булава';
|
||||
nam = 'bulava';
|
||||
oncreate = function()
|
||||
givepoint()
|
||||
end;
|
||||
description = 'Холодное оружие. Может пригодиться против… кого-нибудь.';
|
||||
}
|
||||
|
|
|
@ -72,7 +72,6 @@ obj {
|
|||
obj {
|
||||
-"робот,уборщик";
|
||||
nam = 'robot';
|
||||
alive = false;
|
||||
description = 'У стенки стоит выключенный робот-уборщик. У него два длинных манипулятора-руки и широкие стальные гусеницы.';
|
||||
before_SwitchOn = function(s)
|
||||
if not (s:srch('battery')) then
|
||||
|
@ -83,9 +82,23 @@ obj {
|
|||
p "Робот оживляется, но тут же потухает. Новое сообщение: неисправность руки.";
|
||||
return true;
|
||||
end
|
||||
s.alive = true;
|
||||
lifeon('robot');
|
||||
return "Робот включается и начинает тихо бурчать. Наверное, оценивает чистоту чулана.";
|
||||
end;
|
||||
life = function()
|
||||
if here().dirty then
|
||||
pn '«ВНИМАНИЕ. ОБНАРУЖЕНА ГРЯЗЬ.»';
|
||||
p 'Робот срывается с места и начинает генеральную уборку.';
|
||||
if here():srch('patina') then
|
||||
pn 'Он протирает всё вокруг, тщательно счищая слой патины.'
|
||||
if not _'patina'.scored then
|
||||
_'patina'.scored = true
|
||||
givepoint();
|
||||
end
|
||||
end
|
||||
here().dirty = false;
|
||||
end
|
||||
end;
|
||||
obj = {
|
||||
'robot_hand',
|
||||
'button'
|
||||
|
@ -103,7 +116,7 @@ obj {
|
|||
nam = 'safe';
|
||||
dsc = 'Напротив стоит маленький сейф.';
|
||||
description = function()
|
||||
p 'Маленький сейф с электронным замком. Кто-то выдернул из него провода и подвёл к пустой выемке. Наверное, ему не хватает питания.';
|
||||
p 'Маленький оружейный сейф с электронным замком. Кто-то выдернул из него провода и подвёл к пустой выемке. Наверное, ему не хватает питания.';
|
||||
return false;
|
||||
end;
|
||||
obj = {
|
||||
|
@ -147,7 +160,6 @@ obj {
|
|||
return 'На полу лежит маленькая батарея.';
|
||||
end;
|
||||
description = 'Сменная батарея для бытовой электроники типа «крона». Одному пылесосу её хватает на тридцать лет.';
|
||||
-- BUG: неотключаемое сообщение "Ты помещаешь батарею в ___"
|
||||
before_Insert = function(self, what)
|
||||
if what^'robot' then
|
||||
pn "На панели робота зажигается огонёк. Можно попытаться его включить.";
|
||||
|
@ -240,4 +252,10 @@ obj {
|
|||
found_in = 'pantry';
|
||||
dsc = 'На полу лежит булавка.';
|
||||
description = 'Швейная безопасная булавка. Ничего примечательного.';
|
||||
}: dict {
|
||||
['булавка/рд'] = 'булавки';
|
||||
['булавка/дт'] = 'булавке';
|
||||
['булавка/вн'] = 'булавку';
|
||||
['булавка/тв'] = 'булавкой';
|
||||
['булавка/пр'] = 'булавке';
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue