夜警
その夜。
スイが灯してくれた発光石の、ゆらゆらとした淡い光の中で、わたくしはベッドに入りました。
「スイちゃん、ありがとうございます。枕元に来てください」
「ぽふぃ~♪」
部屋がふわりと暗くなり、代わりに月明かりが差し込みます。そのかすかな光の中で、ふと、スイと目が合います。
「ぽふぃ?」
「今日は残念でしたね。もっと沢山のきゅうりが収穫できると思っていましたが」
「ぽふぃ……」
スイだけではありません。アピィも同じように悲しんでいました。皆で育てた野菜だったのです。
「本音をいえば、わたくしも凄く残念だったのです。一緒に悲しめなくてごめんなさい。わたくしは、人前で感情を見せるわけにはいかなかったのです」
「ぽふぃ……」
スイはわたくしの頬に口腕をピトっと当てました。
「スイちゃんは優しいですね」
「ぽふぃ♪」
人間が皆がスイのようであれば、きっと、全国民、いえ全人類がスローライフを送れることでしょう。
「次からは鹿に負けませんよ」
「ぽふぃ!」
とはいえ、胸騒ぎがします。きっとこの悪い予感は的中します。
「畑の様子が心配ですね。ステータスオープン」
ピケのステータスを開くと、今の畑の様子が見えました。
「ピケちゃん、ご苦労様です」
『……あぃ?』
目を凝らすと、ロープの外で鹿の一団がたむろしているのが見えました。
声を潜めます。
「……よかった。ロープには効果があるようですね」
「……ぽふぃ♪」
しかし、次の瞬間でした。
鹿の一匹が、ぴょこんと軽快にロープを飛び越え、畑に侵入してしまいました。
「あっ……」
「ぽ!?」
鹿の跳躍力を過小評価していたようです。何頭もその後に続きます。
鹿達は鼻先で地面を物色していますが、もはや食べるものは残っていません。狙いの矛先はネギに向かいました。
「あぁ……今度はネギが」
「ぽ、ぽふぃ~……」
鹿はネギを一口食んで――ペッと吐き出しました。お口に合わなかったようですが……。
「……これはこれで腹が立ちます」
「ぽふぃ!」
「大声で追い払いましょう」
大きく息を吸ったとき、ステータスウィンドウから意外な声が聞こえました。
『はぁぴ!!!!』
「アピィちゃん?」
『は~ぴ!!! はぁぴ!!!!』
小さな身体をふるふると震わせながら、必死に威嚇しているアピィの姿が映り込みます。普段なら幻空間に帰っているはずの時間ですが、アピィも今夜は自主的に見張っていてくれたのでしょう。
鹿達はギョッとして、こちらを見ました。
「鹿! 出ていきなさい!」
「ぽふ~!!!」
わたくしたちも声で加勢します。
鹿達は驚いて、腰を抜かしながらジタバタとロープを飛び越え、畑から去っていきました。
「アピィちゃん、ありがとうございます」
「ぽふぃ~」
『はぁぴ♪』
「敵は去りました。みんな、おやすみなさい」
「ぽふぃ」
『はぁぴ!』
『ぇあ!』
「ステータスクローズ」
ロープは鹿の前に無力のようです。
皆の安眠のためにも、早急に、本格的な対策が必要でした。
### ピケの力
次の日、わたくしは書斎に籠もり、対策を練ることにしました。
真っ先に思いつくのはロープを何重にも張り巡らせる案です。たとえば、わたくしの身長を超える高さに一本、その三分の一と三分の二の位置にそれぞれ一本張り巡らせます。しかし、これではロープとロープの間をくぐり抜けてしまうかもしれません。
「ピーヤ(笑)」
わたくしの頭の中で、鹿が白い歯を見せながら野菜をもぐもぐしています。ああ、腹立たしい。
それを防ぐには、おそらく網のようなものを張り巡らせることが必要でしょう。漁師の網が使えるかもしれません。しかし、そもそも王宮には漁師の網を仕入れるルートがありません。その上、王室御用達ともなれば、最高級の特注品となる故、今から発注しても届くのは数週間後から数ヶ月後になってしまうことでしょう。シルク百パーセントの無駄に肌触りの良い網が届いてしまうかもしれません。エイヤに発注させたらどうなることやら。
現実解として、まずは今あるもので野菜を守らなければなりません。
となれば、スキル〝C#〟を用い、何とか鹿を追い払う必要があります。しかし、どうやって?
『は~ぴ!!! はぁぴ!!!!』
『鹿! 出ていきなさい!』
『ぽふ~!!!』
少なくとも鹿はわたくしたちの声に反応しました。ならば、大きな音を立てればよいのです。大きな音といえば――。
ピケが白い皿の上で眠っています。まるで本当の目玉焼きのように。
「スイちゃん、ピケちゃんは自分で大きな声を出せるのですか?」
スイに小声で尋ねます。
スイが口腕を大きく振ると、ピケが目を覚ましました。
「ぇあ?」
「ぽふぃ?」
「ぃあ……」
……たぶん、無理なのでしょう。
ピケは、すぐに眠りに落ちます。
「ごめんなさい、起こしてしまいましたね」
「ぽふぃぽふぃ」
「構わないのですか?」
「ぽふぃ!」
スイは肯定したあと、こてんと転がります。五秒ほど寝たふりをして、一秒だけ身体を起こし、また再び五秒ほど寝たふりをします。
「もしかして、一日の殆どを寝て過ごしているのですか?」
「ぽふぃ!」
「羨ましいですね。でも、寝ているのにずっとステータスウィンドウは見えてますよ」
「ぽふ」
スイは、口腕で、ピケの黄身の部分を指します。
「この大きな目玉は寝ていても見えているのですね」
「ぽふぃ♪」
寝ながら仕事ができるということです。なかなか羨ましい奴め。
そういえば、ピケには遠くの景色を見せる以外にできることはあるのでしょうか?
「スキル〝C#〟何かピケちゃんができること」
雑にスキルを発動してみます。
光る文字がぽわんと浮かび上がりました。
``` csharp
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSwibo();
builder.Services.AddSkillDiscoveryMetadataGenerator();
var app = builder.Build();
app
.ExposeSkillDiscoveryMetadata("csharp.何かピケちゃんができること")
.WithSwiboEventHook("/");
app.MapPost("/", async ([FromBody]SwiboEventNotification notification, ISwiboContext context, CancellationToken cancellationToken) =>
{
if(notification.EventType == SwiboEvent.ChangeReport && notification.TryParseContextData<SwiboCameraEventData>(out var data) && data.DetectionState == SwiboDetectionState.Detected)
{
Debug.WriteLine("動体を検知しました");
}
return Results.Ok();
});
app.Run();
```
ピケはまだ眠っています。
この可愛い寝顔を覗き込むと――。
「えぇあぃあぃ!」
突然、ピケが目を覚ましました。
『デバッグ:動体を検知しました』
どこからともなく声が聞こえてきます。世界の声です。
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
わたくしが身体を動かす度に、世界の声が聞こえてきました。
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
……さすがに、鬱陶しいですね。
「スキル〝C#〟キャンセル」
『デバッグ:動体を検知しました』
『スキル〝csharp.何かピケちゃんができること〟には、サブスキル〝cancel〟が公開されていません。代わりにプログラムを終了しますか?』
『デバッグ:動体を検知しました』
『デバッグ:動体を検知しました』
「え? ……はい、そうしてください」
そうすると、やっと世界の声が止まりました。
「……世界の声と会話してしまいました」
そんなこともできるのですね。
さて、この実験を踏まえると、ピケは普段は寝ていますが、何か動くものを見つけると、目を覚まします。そして、それを起点に何か命令を実行できるのでしょう。
たとえば、『ピケが動体を検知したらお手』とか。
となれば――。
退屈そうに机の上を転がるスイの頬を、指でぷにっとします。
「ぽふ~」
「スイちゃん、出番です」
わたくしがそう言うと、スイは目を輝かせて、わたくしに飛び寄りました。
「ぽふぃ♪」
「アピィちゃんを呼んできてくれますか?」
「ぽふぃ!」
スイがくるりくるりと舞うと、アピィが幻空間からふわりと顕現しました。




