новый раунд тестов!
This commit is contained in:
parent
55cd5d2b18
commit
74963ea4af
11
autoscript
11
autoscript
|
@ -21,6 +21,15 @@
|
||||||
вырезать В из рукава
|
вырезать В из рукава
|
||||||
вставить руку в робота
|
вставить руку в робота
|
||||||
включить робота
|
включить робота
|
||||||
|
выключить робота
|
||||||
|
включить робота
|
||||||
вырезать К из булавки
|
вырезать К из булавки
|
||||||
вырезать Т из щита
|
выйти
|
||||||
юг
|
юг
|
||||||
|
осмотреть дверь
|
||||||
|
вырезать Т из щита
|
||||||
|
осмотреть дверь
|
||||||
|
вырезать И из щи
|
||||||
|
съесть щи
|
||||||
|
выйти
|
||||||
|
открыть дверь
|
||||||
|
|
|
@ -10,18 +10,22 @@ mp.msg.Open.OPEN = "{#You} {#g/открываешь,открываете} {#firs
|
||||||
mp.msg.Open.CLOSE = "{#You} {#g/закрываешь,закрываете} {#first/вн}."
|
mp.msg.Open.CLOSE = "{#You} {#g/закрываешь,закрываете} {#first/вн}."
|
||||||
mp.msg.Take.HAVE = "У {#you/вн} и так {#firstit} уже есть."
|
mp.msg.Take.HAVE = "У {#you/вн} и так {#firstit} уже есть."
|
||||||
mp.msg.Take.SELF = "{#You} есть у {#you/рд}."
|
mp.msg.Take.SELF = "{#You} есть у {#you/рд}."
|
||||||
|
mp.msg.Take.TAKE = '{#You} {#g/берёшь,берёте} {#first/вн}.';
|
||||||
mp.msg.Drop.SELF = "У {#you/рд} не хватит ловкости."
|
mp.msg.Drop.SELF = "У {#you/рд} не хватит ловкости."
|
||||||
mp.msg.Insert.INSERT = "{#You} {#g/кладёшь,кладёте} {#first/вн} в {#second/вн}."
|
mp.msg.Insert.INSERT = "{#You} {#g/кладёшь,кладёте} {#first/вн} в {#second/вн}."
|
||||||
mp.msg.PutOn.PUTON = "{#You} {#g/кладёшь,кладёте} {#first/вн} на {#second/вн}."
|
mp.msg.PutOn.PUTON = "{#You} {#g/кладёшь,кладёте} {#first/вн} на {#second/вн}."
|
||||||
mp.msg.SwitchOn.SWITCHON = "{#You} {#g/включаешь,включаете} {#first/вн}."
|
mp.msg.SwitchOn.SWITCHON = "{#You} {#g/включаешь,включаете} {#first/вн}."
|
||||||
mp.msg.SwitchOff.SWITCHOFF = "{#You} {#g/выключаешь,выключаете} {#first/вн}."
|
mp.msg.SwitchOff.SWITCHOFF = "{#You} {#g/выключаешь,выключаете} {#first/вн}."
|
||||||
mp.msg.Sing.SING = "Это лучше оставить оперным певцам."
|
mp.msg.Sing.SING = "Это лучше оставить оперным певцам."
|
||||||
|
mp.msg.SwitchOn.SWITCHON = "{#You} {#g/включаешь,включаете} {#first/вн}."
|
||||||
mp.msg.Smell.SMELL = "Запах очень забытых вещей."
|
mp.msg.Smell.SMELL = "Запах очень забытых вещей."
|
||||||
mp.msg.Smell.SMELL2 = "Не {#g/волнуйся,волнуйтесь}, у {#you/рд} не пропало чувство запаха. Просто это ничем особенным не пахнет."
|
mp.msg.Smell.SMELL2 = "Не {#g/волнуйся,волнуйтесь}, у {#you/рд} не пропало чувство запаха. Просто это ничем особенным не пахнет."
|
||||||
mp.msg.Taste.TASTE = "Не {#g/волнуйся,волнуйтесь}, у {#you/рд} не пропало чувство вкуса. Просто это не съедобно.";
|
mp.msg.Taste.TASTE = "Не {#g/волнуйся,волнуйтесь}, у {#you/рд} не пропало чувство вкуса. Просто это не съедобно.";
|
||||||
mp.msg.Sleep.SLEEP = "Не спится."
|
mp.msg.Sleep.SLEEP = "Не спится."
|
||||||
mp.msg.Jump.JUMP = "Прыг-скок. Не помогает."
|
mp.msg.Jump.JUMP = "Прыг-скок. Не помогает."
|
||||||
mp.msg.Consult.CONSULT = "{#You} не {#g/находишь,находите} ничего подходящего."
|
mp.msg.Consult.CONSULT = "{#You} не {#g/находишь,находите} ничего подходящего."
|
||||||
|
mp.msg.Cut.CUT = "Резать {#first/вн} бессмысленно."
|
||||||
|
mp.msg.Cut.CUT2 = "Резать {#first/вн} {#second/тв} бессмысленно."
|
||||||
|
|
||||||
local function split(s, sep)
|
local function split(s, sep)
|
||||||
if sep == nil then
|
if sep == nil then
|
||||||
|
@ -176,12 +180,34 @@ function mp:SetShoot(what, letter)
|
||||||
if newTarget then
|
if newTarget then
|
||||||
what:remove();
|
what:remove();
|
||||||
put(newTarget, here());
|
put(newTarget, here());
|
||||||
pn('Вы стреляете в '.. what:noun'вн' ..',и '..what:it('им')..' вырезается в '..newCanonical..'.');
|
p('Вы стреляете в '.. what:noun'вн' ..', и '..what:it('им')..' ');
|
||||||
|
if what:hint'plural' then
|
||||||
|
p 'вырезаются'
|
||||||
|
else
|
||||||
|
p 'вырезается'
|
||||||
|
end
|
||||||
|
pn (' в '..newCanonical..'.');
|
||||||
if newTarget.oncreate ~= nil then
|
if newTarget.oncreate ~= nil then
|
||||||
newTarget.oncreate()
|
newTarget.oncreate()
|
||||||
end
|
end
|
||||||
return;
|
return;
|
||||||
end
|
end
|
||||||
return 'Вы стреляете в '.. what:noun'вн' ..' и '..what:it('им')..' мигает в слабом тумане букв «'..newCanonical..'», но затем возвращается в прежнее состояние.';
|
local retval = ('{#You} {#g/стреляешь,стреляете} в '.. what:noun'вн' .. ' и '..what:it('им')..' ');
|
||||||
|
|
||||||
|
if what:hint'plural' then
|
||||||
|
retval = retval .. 'мигают'
|
||||||
|
else
|
||||||
|
retval = retval .. 'мигает'
|
||||||
|
end
|
||||||
|
retval = retval .. ' в слабом тумане букв «'..newCanonical..'», но затем ';
|
||||||
|
|
||||||
|
if what:hint'plural' then
|
||||||
|
retval = retval .. 'возвращаются'
|
||||||
|
else
|
||||||
|
retval = retval .. 'возвращается'
|
||||||
|
end
|
||||||
|
|
||||||
|
retval = retval .. ' в прежнее состояние.';
|
||||||
|
return retval;
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
--$Name: Полёт в Петербург$
|
--$Name: Полёт в Петербург$
|
||||||
--$Version: 1.2.3$
|
--$Version: 1.2.4$
|
||||||
--$Author:Александр Яковлев$
|
--$Author:Александр Яковлев$
|
||||||
|
|
||||||
require "fmt"
|
require "fmt"
|
||||||
|
@ -29,7 +29,7 @@ end
|
||||||
|
|
||||||
global {
|
global {
|
||||||
score = 0,
|
score = 0,
|
||||||
maxscore = 2
|
maxscore = 3
|
||||||
}
|
}
|
||||||
game.dsc = ''
|
game.dsc = ''
|
||||||
player.description = "Здесь нет зеркал. Но хотя бы ноги выглядят прекрасно.";
|
player.description = "Здесь нет зеркал. Но хотя бы ноги выглядят прекрасно.";
|
||||||
|
|
|
@ -18,7 +18,7 @@ obj {
|
||||||
canonical = 'щи';
|
canonical = 'щи';
|
||||||
nam = 'shi';
|
nam = 'shi';
|
||||||
description = 'Тарелка с остывшими щами. Выглядит не очень аппетитно.';
|
description = 'Тарелка с остывшими щами. Выглядит не очень аппетитно.';
|
||||||
}
|
}: attr 'edible'
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"пластина/жр";
|
-"пластина/жр";
|
||||||
|
|
|
@ -88,6 +88,10 @@ obj {
|
||||||
inv = function(s)
|
inv = function(s)
|
||||||
return s.letter..'-вырезатель'
|
return s.letter..'-вырезатель'
|
||||||
end;
|
end;
|
||||||
|
before_Take = function()
|
||||||
|
p '{#You} {#g/берёшь,берёте} пистолет.';
|
||||||
|
return false;
|
||||||
|
end;
|
||||||
before_Shoot = 'Не {#plural/размахивай,размахивайте} этой штукой! Её надо направить во что-то определённое.';
|
before_Shoot = 'Не {#plural/размахивай,размахивайте} этой штукой! Её надо направить во что-то определённое.';
|
||||||
}: dict {
|
}: dict {
|
||||||
['вырезатель/рд'] = 'вырезателя';
|
['вырезатель/рд'] = 'вырезателя';
|
||||||
|
@ -98,10 +102,16 @@ obj {
|
||||||
}: attr 'essential'
|
}: attr 'essential'
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"робот,уборщик/мр,ед";
|
-"робот,уборщик,робот-уборщик/мр,ед";
|
||||||
nam = 'robot';
|
nam = 'robot';
|
||||||
description = function(s)
|
description = function(s)
|
||||||
p 'У стенки стоит выключенный робот-уборщик. У него ';
|
p 'У стенки стоит ';
|
||||||
|
if live(s) then
|
||||||
|
p 'включённый';
|
||||||
|
else
|
||||||
|
p 'выключенный';
|
||||||
|
end
|
||||||
|
p ' робот-уборщик. У него ';
|
||||||
if not (s:srch('hand')) then
|
if not (s:srch('hand')) then
|
||||||
p 'длинное щупальце как один из манипуляторов, пустое гнездо вместо второго '
|
p 'длинное щупальце как один из манипуляторов, пустое гнездо вместо второго '
|
||||||
else
|
else
|
||||||
|
@ -110,6 +120,9 @@ obj {
|
||||||
pn 'и широкие стальные гусеницы.';
|
pn 'и широкие стальные гусеницы.';
|
||||||
end;
|
end;
|
||||||
before_SwitchOn = function(s)
|
before_SwitchOn = function(s)
|
||||||
|
if live(s) then
|
||||||
|
return 'Робот уже включён.';
|
||||||
|
end
|
||||||
if not (s:srch('battery')) then
|
if not (s:srch('battery')) then
|
||||||
p "Над кнопкой включения загорается сообщение: нет батареи.";
|
p "Над кнопкой включения загорается сообщение: нет батареи.";
|
||||||
return true;
|
return true;
|
||||||
|
@ -119,8 +132,11 @@ obj {
|
||||||
return true;
|
return true;
|
||||||
end
|
end
|
||||||
lifeon('robot');
|
lifeon('robot');
|
||||||
return "Робот включается и начинает тихо бурчать. Наверное, оценивает чистоту чулана.";
|
givepoint();
|
||||||
|
pn "Робот включается и начинает тихо бурчать. Наверное, оценивает чистоту чулана.";
|
||||||
|
return false;
|
||||||
end;
|
end;
|
||||||
|
before_SwitchOff = 'Пусть работает, хоть не так одиноко.';
|
||||||
life = function()
|
life = function()
|
||||||
if here().dirty then
|
if here().dirty then
|
||||||
pn '«ВНИМАНИЕ. ОБНАРУЖЕНА ГРЯЗЬ. НЕОБХОДИМА ИНСПЕКЦИЯ.»';
|
pn '«ВНИМАНИЕ. ОБНАРУЖЕНА ГРЯЗЬ. НЕОБХОДИМА ИНСПЕКЦИЯ.»';
|
||||||
|
@ -148,7 +164,7 @@ obj {
|
||||||
}: attr 'essential,scenery,open,switchable,container'
|
}: attr 'essential,scenery,open,switchable,container'
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"сейф/мр";
|
-"сейф,маленький сейф/мр";
|
||||||
nam = 'safe';
|
nam = 'safe';
|
||||||
dsc = 'Напротив стоит маленький сейф.';
|
dsc = 'Напротив стоит маленький сейф.';
|
||||||
before_Close = function(s)
|
before_Close = function(s)
|
||||||
|
@ -165,15 +181,15 @@ obj {
|
||||||
'letterremover',
|
'letterremover',
|
||||||
}
|
}
|
||||||
}: dict {
|
}: dict {
|
||||||
['робот/рд'] = 'робота';
|
['сейф/рд'] = 'сейфа';
|
||||||
['робот/дт'] = 'роботу';
|
['сейф/дт'] = 'сейфу';
|
||||||
['робот/вн'] = 'робота';
|
['сейф/вн'] = 'сейфа';
|
||||||
['робот/тв'] = 'роботом';
|
['сейф/тв'] = 'сейфом';
|
||||||
['робот/пр'] = 'роботе';
|
['сейф/пр'] = 'сейфе';
|
||||||
}: attr 'essential,static,container,openable,locked'
|
}: attr 'essential,static,container,openable,locked'
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"коробка,коробчонка,коробочка/жр|коробочек/мр";
|
-"коробка,маленькая коробка,коробчонка,коробочка/жр|коробочек/мр";
|
||||||
nam = 'box';
|
nam = 'box';
|
||||||
found_in = 'pantry';
|
found_in = 'pantry';
|
||||||
dsc = 'Возле робота лежит маленькая коробка.';
|
dsc = 'Возле робота лежит маленькая коробка.';
|
||||||
|
@ -193,7 +209,7 @@ obj {
|
||||||
}: attr 'container,female,openable';
|
}: attr 'container,female,openable';
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"батарея,батарейка/жр";
|
-"батарея,маленькая батарея,батарейка/жр";
|
||||||
nam = 'battery';
|
nam = 'battery';
|
||||||
dsc = function(s)
|
dsc = function(s)
|
||||||
if s:inside('box') then
|
if s:inside('box') then
|
||||||
|
@ -228,7 +244,7 @@ obj {
|
||||||
}: attr 'essential'
|
}: attr 'essential'
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"кнопка/мр|выключатель/мр";
|
-"кнопка,кнопка включения/жр|выключатель/мр";
|
||||||
nam = 'button';
|
nam = 'button';
|
||||||
description = 'Кнопка включения робота. Ничего примечательного.';
|
description = 'Кнопка включения робота. Ничего примечательного.';
|
||||||
}: attr 'essential,scenery,switchable'
|
}: attr 'essential,scenery,switchable'
|
||||||
|
@ -255,7 +271,7 @@ obj {
|
||||||
}
|
}
|
||||||
|
|
||||||
obj {
|
obj {
|
||||||
-"стенд/мр";
|
-"пожарный стенд,стенд/мр";
|
||||||
nam = 'stand';
|
nam = 'stand';
|
||||||
dsc = 'На стене покосился пожарный стенд.';
|
dsc = 'На стене покосился пожарный стенд.';
|
||||||
canonical = 'стенд';
|
canonical = 'стенд';
|
||||||
|
|
Loading…
Reference in a new issue